[v2] doc: announce adoption of C11 atomic operations semantics

Message ID 20200522043013.12535-1-honnappa.nagarahalli@arm.com (mailing list archive)
State Accepted, archived
Delegated to: Thomas Monjalon
Headers
Series [v2] doc: announce adoption of C11 atomic operations semantics |

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/Intel-compilation success Compilation OK
ci/travis-robot success Travis build: passed

Commit Message

Honnappa Nagarahalli May 22, 2020, 4:30 a.m. UTC
  As agreed in the DPDK tech board [1], after 20.05 release, patches must
use C11 atomic operations semantics with the help of wrappers.

[1] http://mails.dpdk.org/archives/dev/2020-April/165143.html

Signed-off-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Reviewed-by: Phil Yang <phil.yang@arm.com>
Reviewed-by: Ruifeng Wang <ruifeng.wang@arm.com>
Acked-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Acked-by: Jerin Jacob <jerinj@marvell.com>
---
 doc/guides/rel_notes/deprecation.rst | 13 +++++++++++++
 1 file changed, 13 insertions(+)
  

Comments

Ananyev, Konstantin May 22, 2020, 8:37 a.m. UTC | #1
> 
> As agreed in the DPDK tech board [1], after 20.05 release, patches must
> use C11 atomic operations semantics with the help of wrappers.
> 
> [1] http://mails.dpdk.org/archives/dev/2020-April/165143.html
> 
> Signed-off-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
> Reviewed-by: Phil Yang <phil.yang@arm.com>
> Reviewed-by: Ruifeng Wang <ruifeng.wang@arm.com>
> Acked-by: Hemant Agrawal <hemant.agrawal@nxp.com>
> Acked-by: Jerin Jacob <jerinj@marvell.com>
> ---
>  doc/guides/rel_notes/deprecation.rst | 13 +++++++++++++
>  1 file changed, 13 insertions(+)
> 
> diff --git a/doc/guides/rel_notes/deprecation.rst b/doc/guides/rel_notes/deprecation.rst
> index 20aa745b7..01f99a0d6 100644
> --- a/doc/guides/rel_notes/deprecation.rst
> +++ b/doc/guides/rel_notes/deprecation.rst
> @@ -113,3 +113,16 @@ Deprecation Notices
>    Python 2 support will be completely removed in 20.11.
>    In 20.08, explicit deprecation warnings will be displayed when running
>    scripts with Python 2.
> +
> +* rte_atomicNN_xxx: These APIs do not take memory order parameter. This does
> +  not allow for writing optimized code for all the CPU architectures supported
> +  in DPDK. DPDK will adopt C11 atomic operations semantics and provide wrappers
> +  using C11 atomic built-ins. These wrappers must be used for patches that
> +  need to be merged in 20.08 onwards. This change will not introduce any
> +  performance degradation.
> +
> +* rte_smp_*mb: These APIs provide full barrier functionality. However, many
> +  use cases do not require full barriers. To support such use cases, DPDK will
> +  adopt C11 barrier semantics and provide wrappers using C11 atomic built-ins.
> +  These wrappers must be used for patches that need to be merged in 20.08
> +  onwards. This change will not introduce any performance degradation.
> --

Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com>

> 2.17.1
  
Thomas Monjalon May 24, 2020, 11:54 p.m. UTC | #2
> > As agreed in the DPDK tech board [1], after 20.05 release, patches must
> > use C11 atomic operations semantics with the help of wrappers.
> > 
> > [1] http://mails.dpdk.org/archives/dev/2020-April/165143.html
> > 
> > Signed-off-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
> > Reviewed-by: Phil Yang <phil.yang@arm.com>
> > Reviewed-by: Ruifeng Wang <ruifeng.wang@arm.com>
> > Acked-by: Hemant Agrawal <hemant.agrawal@nxp.com>
> > Acked-by: Jerin Jacob <jerinj@marvell.com>
> > ---
> > +* rte_atomicNN_xxx: These APIs do not take memory order parameter. This does
> > +  not allow for writing optimized code for all the CPU architectures supported
> > +  in DPDK. DPDK will adopt C11 atomic operations semantics and provide wrappers
> > +  using C11 atomic built-ins. These wrappers must be used for patches that
> > +  need to be merged in 20.08 onwards. This change will not introduce any
> > +  performance degradation.
> > +
> > +* rte_smp_*mb: These APIs provide full barrier functionality. However, many
> > +  use cases do not require full barriers. To support such use cases, DPDK will
> > +  adopt C11 barrier semantics and provide wrappers using C11 atomic built-ins.
> > +  These wrappers must be used for patches that need to be merged in 20.08
> > +  onwards. This change will not introduce any performance degradation.
> 
> Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
Acked-by: David Christensen <drc@linux.vnet.ibm.com>

Applied, thanks
  

Patch

diff --git a/doc/guides/rel_notes/deprecation.rst b/doc/guides/rel_notes/deprecation.rst
index 20aa745b7..01f99a0d6 100644
--- a/doc/guides/rel_notes/deprecation.rst
+++ b/doc/guides/rel_notes/deprecation.rst
@@ -113,3 +113,16 @@  Deprecation Notices
   Python 2 support will be completely removed in 20.11.
   In 20.08, explicit deprecation warnings will be displayed when running
   scripts with Python 2.
+
+* rte_atomicNN_xxx: These APIs do not take memory order parameter. This does
+  not allow for writing optimized code for all the CPU architectures supported
+  in DPDK. DPDK will adopt C11 atomic operations semantics and provide wrappers
+  using C11 atomic built-ins. These wrappers must be used for patches that
+  need to be merged in 20.08 onwards. This change will not introduce any
+  performance degradation.
+
+* rte_smp_*mb: These APIs provide full barrier functionality. However, many
+  use cases do not require full barriers. To support such use cases, DPDK will
+  adopt C11 barrier semantics and provide wrappers using C11 atomic built-ins.
+  These wrappers must be used for patches that need to be merged in 20.08
+  onwards. This change will not introduce any performance degradation.