* Re: [dpdk-dev] [PATCH] doc: announce adoption of C11 atomic operations semantics
2020-05-07 7:06 [dpdk-dev] [PATCH] doc: announce adoption of C11 atomic operations semantics Phil Yang
@ 2020-05-07 21:00 ` Stephen Hemminger
2020-05-08 3:46 ` Honnappa Nagarahalli
2020-05-21 4:31 ` Honnappa Nagarahalli
` (3 subsequent siblings)
4 siblings, 1 reply; 11+ messages in thread
From: Stephen Hemminger @ 2020-05-07 21:00 UTC (permalink / raw)
To: Phil Yang
Cc: dev, bruce.richardson, ferruh.yigit, hemant.agrawal,
honnappa.nagarahalli, jerinj, ktraynor, konstantin.ananyev,
maxime.coquelin, olivier.matz, thomas, ruifeng.wang, nd
On Thu, 7 May 2020 15:06:33 +0800
Phil Yang <phil.yang@arm.com> wrote:
> From: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
>
> 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>
The use of Gcc __sync_ primitives should also be replaced with C11 atomic.
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [dpdk-dev] [PATCH] doc: announce adoption of C11 atomic operations semantics
2020-05-07 21:00 ` Stephen Hemminger
@ 2020-05-08 3:46 ` Honnappa Nagarahalli
0 siblings, 0 replies; 11+ messages in thread
From: Honnappa Nagarahalli @ 2020-05-08 3:46 UTC (permalink / raw)
To: Stephen Hemminger, Phil Yang
Cc: dev, bruce.richardson, ferruh.yigit, hemant.agrawal, jerinj,
ktraynor, konstantin.ananyev, maxime.coquelin, olivier.matz,
thomas, Ruifeng Wang, nd, Honnappa Nagarahalli, nd
<snip>
> Subject: Re: [PATCH] doc: announce adoption of C11 atomic operations
> semantics
>
> On Thu, 7 May 2020 15:06:33 +0800
> Phil Yang <phil.yang@arm.com> wrote:
>
> > From: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
> >
> > 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>
>
> The use of Gcc __sync_ primitives should also be replaced with C11 atomic.
Agree, not sure if this should be added to the deprecation list. But, will add it to checkpatches.sh
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [dpdk-dev] [PATCH] doc: announce adoption of C11 atomic operations semantics
2020-05-07 7:06 [dpdk-dev] [PATCH] doc: announce adoption of C11 atomic operations semantics Phil Yang
2020-05-07 21:00 ` Stephen Hemminger
@ 2020-05-21 4:31 ` Honnappa Nagarahalli
2020-05-21 5:04 ` Hemant Agrawal
2020-05-21 4:56 ` Jerin Jacob
` (2 subsequent siblings)
4 siblings, 1 reply; 11+ messages in thread
From: Honnappa Nagarahalli @ 2020-05-21 4:31 UTC (permalink / raw)
To: Phil Yang, dev
Cc: bruce.richardson, ferruh.yigit, hemant.agrawal, jerinj, ktraynor,
konstantin.ananyev, maxime.coquelin, olivier.matz, stephen,
thomas, Phil Yang, Ruifeng Wang, nd, Honnappa Nagarahalli, nd
<snip>
> Subject: [PATCH] doc: announce adoption of C11 atomic operations semantics
>
> From: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
>
> 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
As noted in the minutes, this has been approved in the tech-board. Can I get some ACKs for this patch?
>
> 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>
> ---
> doc/guides/rel_notes/deprecation.rst | 12 ++++++++++++
> 1 file changed, 12 insertions(+)
>
> diff --git a/doc/guides/rel_notes/deprecation.rst
> b/doc/guides/rel_notes/deprecation.rst
> index 20aa745..208708d 100644
> --- a/doc/guides/rel_notes/deprecation.rst
> +++ b/doc/guides/rel_notes/deprecation.rst
> @@ -113,3 +113,15 @@ 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.
> +
> +* 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.
> --
> 2.7.4
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [dpdk-dev] [PATCH] doc: announce adoption of C11 atomic operations semantics
2020-05-21 4:31 ` Honnappa Nagarahalli
@ 2020-05-21 5:04 ` Hemant Agrawal
0 siblings, 0 replies; 11+ messages in thread
From: Hemant Agrawal @ 2020-05-21 5:04 UTC (permalink / raw)
To: Honnappa Nagarahalli, Phil Yang, dev
Cc: bruce.richardson, ferruh.yigit, jerinj, ktraynor,
konstantin.ananyev, maxime.coquelin, olivier.matz, stephen,
thomas, Phil Yang, Ruifeng Wang, nd, nd
Acked-by: Hemant Agrawal <hemant.agrawal@nxp.com>
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [dpdk-dev] [PATCH] doc: announce adoption of C11 atomic operations semantics
2020-05-07 7:06 [dpdk-dev] [PATCH] doc: announce adoption of C11 atomic operations semantics Phil Yang
2020-05-07 21:00 ` Stephen Hemminger
2020-05-21 4:31 ` Honnappa Nagarahalli
@ 2020-05-21 4:56 ` Jerin Jacob
2020-05-21 10:33 ` Ananyev, Konstantin
2020-05-21 19:34 ` David Christensen
2020-05-22 4:30 ` [dpdk-dev] [PATCH v2] " Honnappa Nagarahalli
4 siblings, 1 reply; 11+ messages in thread
From: Jerin Jacob @ 2020-05-21 4:56 UTC (permalink / raw)
To: Phil Yang
Cc: dpdk-dev, Richardson, Bruce, Ferruh Yigit, Hemant Agrawal,
Honnappa Nagarahalli, Jerin Jacob, Kevin Traynor, Ananyev,
Konstantin, Maxime Coquelin, Olivier Matz, Stephen Hemminger,
Thomas Monjalon, Ruifeng Wang (Arm Technology China),
nd
On Thu, May 7, 2020 at 12:38 PM Phil Yang <phil.yang@arm.com> wrote:
>
> From: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
>
> 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: Jerin Jacob <jerinj@marvell.com>
> ---
> doc/guides/rel_notes/deprecation.rst | 12 ++++++++++++
> 1 file changed, 12 insertions(+)
>
> diff --git a/doc/guides/rel_notes/deprecation.rst b/doc/guides/rel_notes/deprecation.rst
> index 20aa745..208708d 100644
> --- a/doc/guides/rel_notes/deprecation.rst
> +++ b/doc/guides/rel_notes/deprecation.rst
> @@ -113,3 +113,15 @@ 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.
> +
> +* 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.
> --
> 2.7.4
>
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [dpdk-dev] [PATCH] doc: announce adoption of C11 atomic operations semantics
2020-05-21 4:56 ` Jerin Jacob
@ 2020-05-21 10:33 ` Ananyev, Konstantin
0 siblings, 0 replies; 11+ messages in thread
From: Ananyev, Konstantin @ 2020-05-21 10:33 UTC (permalink / raw)
To: Jerin Jacob, Phil Yang
Cc: dpdk-dev, Richardson, Bruce, Yigit, Ferruh, Hemant Agrawal,
Honnappa Nagarahalli, Jerin Jacob, Kevin Traynor,
Maxime Coquelin, Olivier Matz, Stephen Hemminger,
Thomas Monjalon, Ruifeng Wang (Arm Technology China),
nd
> >
> > 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>
>
> > ---
> > doc/guides/rel_notes/deprecation.rst | 12 ++++++++++++
> > 1 file changed, 12 insertions(+)
> >
> > diff --git a/doc/guides/rel_notes/deprecation.rst b/doc/guides/rel_notes/deprecation.rst
> > index 20aa745..208708d 100644
> > --- a/doc/guides/rel_notes/deprecation.rst
> > +++ b/doc/guides/rel_notes/deprecation.rst
> > @@ -113,3 +113,15 @@ 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.
> > +
> > +* 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.
> > --
Can we probably add a note that new API supposed to not introduce
performance degradation comparing to one we are going to deprecate?
Thanks
Konstantin
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [dpdk-dev] [PATCH] doc: announce adoption of C11 atomic operations semantics
2020-05-07 7:06 [dpdk-dev] [PATCH] doc: announce adoption of C11 atomic operations semantics Phil Yang
` (2 preceding siblings ...)
2020-05-21 4:56 ` Jerin Jacob
@ 2020-05-21 19:34 ` David Christensen
2020-05-22 4:30 ` [dpdk-dev] [PATCH v2] " Honnappa Nagarahalli
4 siblings, 0 replies; 11+ messages in thread
From: David Christensen @ 2020-05-21 19:34 UTC (permalink / raw)
To: Phil Yang, dev
Cc: bruce.richardson, ferruh.yigit, hemant.agrawal,
honnappa.nagarahalli, jerinj, ktraynor, konstantin.ananyev,
maxime.coquelin, olivier.matz, stephen, thomas, ruifeng.wang, nd
On 5/7/20 12:06 AM, Phil Yang wrote:
> From: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
>
> 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: David Christensen <drc@linux.vnet.ibm.com>
^ permalink raw reply [flat|nested] 11+ messages in thread
* [dpdk-dev] [PATCH v2] doc: announce adoption of C11 atomic operations semantics
2020-05-07 7:06 [dpdk-dev] [PATCH] doc: announce adoption of C11 atomic operations semantics Phil Yang
` (3 preceding siblings ...)
2020-05-21 19:34 ` David Christensen
@ 2020-05-22 4:30 ` Honnappa Nagarahalli
2020-05-22 8:37 ` Ananyev, Konstantin
4 siblings, 1 reply; 11+ messages in thread
From: Honnappa Nagarahalli @ 2020-05-22 4:30 UTC (permalink / raw)
To: dev, konstantin.ananyev, stephen, jerinj, hemant.agrawal
Cc: ruifeng.wang, phil.yang, honnappa.nagarahalli, nd
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.
--
2.17.1
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [dpdk-dev] [PATCH v2] doc: announce adoption of C11 atomic operations semantics
2020-05-22 4:30 ` [dpdk-dev] [PATCH v2] " Honnappa Nagarahalli
@ 2020-05-22 8:37 ` Ananyev, Konstantin
2020-05-24 23:54 ` Thomas Monjalon
0 siblings, 1 reply; 11+ messages in thread
From: Ananyev, Konstantin @ 2020-05-22 8:37 UTC (permalink / raw)
To: Honnappa Nagarahalli, dev, stephen, jerinj, hemant.agrawal
Cc: ruifeng.wang, phil.yang, nd
>
> 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
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [dpdk-dev] [PATCH v2] doc: announce adoption of C11 atomic operations semantics
2020-05-22 8:37 ` Ananyev, Konstantin
@ 2020-05-24 23:54 ` Thomas Monjalon
0 siblings, 0 replies; 11+ messages in thread
From: Thomas Monjalon @ 2020-05-24 23:54 UTC (permalink / raw)
To: Honnappa Nagarahalli
Cc: dev, stephen, jerinj, hemant.agrawal, ruifeng.wang, phil.yang,
nd, Ananyev, Konstantin
> > 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
^ permalink raw reply [flat|nested] 11+ messages in thread