Using C11 atomic semantic
In the techboard of April 22, it has been decided to block patches using rte_atomicNN_xx and rte_smp_*mb APIs, starting DPDK 20.08. Meeting minutes:
http://mails.dpdk.org/archives/dev/2020-April/165143.html
Deprecation notice:
http://doc.dpdk.org/guides/rel_notes/deprecation.html
Some doc has been submitted to help understanding how to manage atomics:
http://doc .dpdk.org/guides/prog_guide/writing_efficient_code.html#locks-and-atomic-operations
Unfortunately the tool to check new code was merged last week:
http://git.dpdk.org/dpdk/commit/?id=f1602b4a86
As a consequence, I propose to apply the "reject rule" starting DPDK 20.11.
Can we make this rule better advertised with an announce message? Are the current technical explanations enough?
If not, it would be wonderful to have a blog post explaining the details, as part of an announce.
+Ruifeng
Quoted 16 lines
-----Original Message-----
From: Thomas Monjalon <[email protected]>
Sent: Monday, July 20, 2020 10:34 AM
To: Honnappa Nagarahalli <[email protected]>
Cc: [email protected]; [email protected]; [email protected]; Phil Yang <[email protected]>; [email protected]
Subject: Using C11 atomic semanticIn the techboard of April 22, it has been decided to block patches using
rte_atomicNN_xxand rte_smp_*mb APIs, starting DPDK 20.08. Meeting minutes:http://mails.dpdk.org/archives/dev/2020-April/165143.htmlDeprecation notice:
http://doc.dpdk.org/guides/rel_notes/deprecation.htmlSome doc has been submitted to help understanding how to manage atomics:
Quoted 8 lines
http://doc .dpdk.org/guides/prog_guide/writing_efficient_code.html#locks-and-atomic-operations
Unfortunately the tool to check new code was merged last week:
http://git.dpdk.org/dpdk/commit/?id=f1602b4a86As a consequence, I propose to apply the "reject rule" starting DPDK 20.11.
As far as I know no patch with rte_atomic has gone in 20.08 so far. Are there any patches in RC2/RC3 that need rte_atomic APIs?
Quoted 2 lines
Can we make this rule better advertised with an announce message?
Do you mean an email on dpdk-announce mailing list?
Quoted 1 line
Are the current technical explanations enough?
The documentation patch you referenced above covers most common cases people will encounter. Even the rte_ring/rte_stack algorithms work on the same principles.
Quoted 2 lines
If not, it would be wonderful to have a blog post explaining the details, as part of an announce.
This is in the works. The plan is to send it to you soon and get it out along with the release.
Quoted 1 line
20/07/2020 17:44, Honnappa Nagarahalli:
Quoted 13 lines
From: Thomas Monjalon <[email protected]>
Quoted 12 lines
In the techboard of April 22, it has been decided to block patches using
rte_atomicNN_xxand rte_smp_*mb APIs, starting DPDK 20.08. Meeting minutes:http://mails.dpdk.org/archives/dev/2020-April/165143.htmlDeprecation notice:
http://doc.dpdk.org/guides/rel_notes/deprecation.htmlSome doc has been submitted to help understanding how to manage atomics:
http://doc .dpdk.org/guides/prog_guide/writing_efficient_code.html#locks-and-
atomic-operations
Quoted 6 lines
Quoted 4 lines
Unfortunately the tool to check new code was merged last week:
http://git.dpdk.org/dpdk/commit/?id=f1602b4a86As a consequence, I propose to apply the "reject rule" starting DPDK 20.11.
As far as I know no patch with
rte_atomichas gone in 20.08 so far. Are there any patches in RC2/RC3 that needrte_atomicAPIs?
Yes we have the case of an additional call added in 20.08-rc2 in mlx5 (not yet converted to C11 atomics).
Quoted 3 lines
Quoted 1 line
Can we make this rule better advertised with an announce message?
Do you mean an email on dpdk-announce mailing list?
Yes
Quoted 8 lines
Quoted 1 line
Are the current technical explanations enough?
The documentation patch you referenced above covers most common cases people will encounter. Even the rte_ring/rte_stack algorithms work on the same principles.
Quoted 2 lines
If not, it would be wonderful to have a blog post explaining the details, as part of an announce.
This is in the works. The plan is to send it to you soon and get it out along with the release.
Great
<snip>
Quoted 20 lines
20/07/2020 17:44, Honnappa Nagarahalli:
Quoted 10 lines
From: Thomas Monjalon <[email protected]>
Quoted 9 lines
In the techboard of April 22, it has been decided to block patches using
rte_atomicNN_xxand rte_smp_*mb APIs, starting DPDK 20.08. Meeting minutes:http://mails.dpdk.org/archives/dev/2020-April/165143.htmlDeprecation notice:
http://doc.dpdk.org/guides/rel_notes/deprecation.htmlSome doc has been submitted to help understanding how to manage
atomics:
Quoted 1 line
Quoted 1 line
http://doc.dpdk.org/guides/prog_guide/writing_efficient_code.html#locks-and-
Quoted 5 lines
Quoted 5 lines
atomic-operations
Unfortunately the tool to check new code was merged last week:
http://git.dpdk.org/dpdk/commit/?id=f1602b4a86
Quoted 7 lines
Quoted 3 lines
Quoted 1 line
As a consequence, I propose to apply the "reject rule" starting DPDK 20.11.
As far as I know no patch with
rte_atomichas gone in 20.08 so far. Are thereany patches in RC2/RC3 that need
rte_atomicAPIs?Yes we have the case of an additional call added in 20.08-rc2 in mlx5 (not yet converted to C11 atomics).
There is one patch that Phil had put together [1] for mlx5.
Since this is a unconverted module, suggest allowing for 20.08 instead of removing the 'reject rule' patch.
[1] https://patches.dpdk.org/patch/72007/
Quoted 21 lines
Quoted 4 lines
Quoted 2 lines
Can we make this rule better advertised with an announce message?
Do you mean an email on dpdk-announce mailing list?
Yes
Quoted 3 lines
Quoted 1 line
Are the current technical explanations enough?
The documentation patch you referenced above covers most common cases
people will encounter. Even the rte_ring/rte_stack algorithms work on the same principles.
Quoted 5 lines
Quoted 3 lines
If not, it would be wonderful to have a blog post explaining the details, as part of an announce.
This is in the works. The plan is to send it to you soon and get it out along
with the release.
Great