Message ID | 20200522043013.12535-1-honnappa.nagarahalli@arm.com |
---|---|
State | New |
Headers | show |
Series | [v2] doc: announce adoption of C11 atomic operations semantics | expand |
> > 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
> > 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
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.