DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] [PATCH] doc: deprication notice to mark tm spec as experimental
@ 2020-05-01 17:16 Nithin Dabilpuram
  2020-05-05  6:47 ` Ray Kinsella
                   ` (2 more replies)
  0 siblings, 3 replies; 23+ messages in thread
From: Nithin Dabilpuram @ 2020-05-01 17:16 UTC (permalink / raw)
  To: ferruh.yigit, bruce.richardson, cristian.dumitrescu, thomas,
	bluca, jasvinder.singh, arybchenko, ray.kinsella, nhorman,
	ktraynor, david.marchand, John McNamara, Marko Kovacevic
  Cc: dev, jerinj, kkanas, Nithin Dabilpuram

From: Nithin Dabilpuram <ndabilpuram@marvell.com>

Based on the discussion in below mail thread, it is concluded that
all traffic manager API's (rte_tm.h) need to be marked experimental
till few more releases to support further improvements to spec.

https://mails.dpdk.org/archives/dev/2020-April/164970.html

Adding deprication notice for the same in advance.

Signed-off-by: Nithin Dabilpuram <ndabilpuram@marvell.com>
---
 doc/guides/rel_notes/deprecation.rst | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/doc/guides/rel_notes/deprecation.rst b/doc/guides/rel_notes/deprecation.rst
index 1339f54..8c90ec9 100644
--- a/doc/guides/rel_notes/deprecation.rst
+++ b/doc/guides/rel_notes/deprecation.rst
@@ -118,3 +118,12 @@ 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.
+
+* traffic manager: Based on the discussion in the thread
+  https://mails.dpdk.org/archives/dev/2020-April/164970.html it turns out that
+  all traffic manager API's in ``rte_tm.h`` were mistakenly made stable even
+  though the MAINTAINER's file and header file text mentions it to be still
+  experimental. Given that even now, both the maintainer and other contributor's
+  are inclined towards keeping those API's in experimental state till some more
+  releases in support of spec improvements, it is decided that all API's in
+  ``rte_tm.h`` will be marked back as experimental in v20.11 DPDK release.
-- 
2.8.4


^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [dpdk-dev] [PATCH] doc: deprication notice to mark tm spec as experimental
  2020-05-01 17:16 [dpdk-dev] [PATCH] doc: deprication notice to mark tm spec as experimental Nithin Dabilpuram
@ 2020-05-05  6:47 ` Ray Kinsella
  2020-05-05  7:45   ` [dpdk-dev] [EXT] " Nithin Dabilpuram
  2020-05-05  8:07 ` [dpdk-dev] [PATCH v2] " Nithin Dabilpuram
  2020-09-09 17:22 ` [dpdk-dev] [PATCH] ethdev: mark all traffic manager API " Nithin Dabilpuram
  2 siblings, 1 reply; 23+ messages in thread
From: Ray Kinsella @ 2020-05-05  6:47 UTC (permalink / raw)
  To: Nithin Dabilpuram, ferruh.yigit, bruce.richardson,
	cristian.dumitrescu, thomas, bluca, jasvinder.singh, arybchenko,
	ray.kinsella, nhorman, ktraynor, david.marchand, John McNamara,
	Marko Kovacevic
  Cc: dev, jerinj, kkanas, Nithin Dabilpuram



On 01/05/2020 18:16, Nithin Dabilpuram wrote:
> From: Nithin Dabilpuram <ndabilpuram@marvell.com>
> 
> Based on the discussion in below mail thread, it is concluded that
> all traffic manager API's (rte_tm.h) need to be marked experimental
> till few more releases to support further improvements to spec.
> 
> https://mails.dpdk.org/archives/dev/2020-April/164970.html
> 
> Adding deprication notice for the same in advance.
> 
> Signed-off-by: Nithin Dabilpuram <ndabilpuram@marvell.com>
> ---
>  doc/guides/rel_notes/deprecation.rst | 9 +++++++++
>  1 file changed, 9 insertions(+)
> 
> diff --git a/doc/guides/rel_notes/deprecation.rst b/doc/guides/rel_notes/deprecation.rst
> index 1339f54..8c90ec9 100644
> --- a/doc/guides/rel_notes/deprecation.rst
> +++ b/doc/guides/rel_notes/deprecation.rst
> @@ -118,3 +118,12 @@ 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.
> +
> +* traffic manager: Based on the discussion in the thread
> +  https://mails.dpdk.org/archives/dev/2020-April/164970.html it turns out that
> +  all traffic manager API's in ``rte_tm.h`` were mistakenly made stable even
> +  though the MAINTAINER's file and header file text mentions it to be still
> +  experimental. Given that even now, both the maintainer and other contributor's
> +  are inclined towards keeping those API's in experimental state till some more
> +  releases in support of spec improvements, it is decided that all API's in
> +  ``rte_tm.h`` will be marked back as experimental in v20.11 DPDK release.
> 

Slightly wordy - suggest making it a small bit more concise as follows. 

* traffic manager: All traffic manager API's in ``rte_tm.h`` were mistakenly made 
 abi stable in the v19.11 release. The TM maintainer and other contributor's have 
 agreed to keep the TM API's as experimental in expectation of additional spec 
 improvements. Therefore, all API's in ``rte_tm.h`` will be marked back as 
 experimental in v20.11 DPDK release. For more detail, please see `the thread
 <https://mails.dpdk.org/archives/dev/2020-April/164970.html>`_.

Ray K

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [dpdk-dev] [EXT] Re: [PATCH] doc: deprication notice to mark tm spec as experimental
  2020-05-05  6:47 ` Ray Kinsella
@ 2020-05-05  7:45   ` Nithin Dabilpuram
  0 siblings, 0 replies; 23+ messages in thread
From: Nithin Dabilpuram @ 2020-05-05  7:45 UTC (permalink / raw)
  To: Ray Kinsella
  Cc: Nithin Dabilpuram, ferruh.yigit, bruce.richardson,
	cristian.dumitrescu, thomas, bluca, jasvinder.singh, arybchenko,
	ray.kinsella, nhorman, ktraynor, david.marchand, John McNamara,
	Marko Kovacevic, dev, jerinj, kkanas

On Tue, May 05, 2020 at 07:47:43AM +0100, Ray Kinsella wrote:
> External Email
> 
> ----------------------------------------------------------------------
> 
> 
> On 01/05/2020 18:16, Nithin Dabilpuram wrote:
> > From: Nithin Dabilpuram <ndabilpuram@marvell.com>
> > 
> > Based on the discussion in below mail thread, it is concluded that
> > all traffic manager API's (rte_tm.h) need to be marked experimental
> > till few more releases to support further improvements to spec.
> > 
> > https://urldefense.proofpoint.com/v2/url?u=https-3A__mails.dpdk.org_archives_dev_2020-2DApril_164970.html&d=DwIDaQ&c=nKjWec2b6R0mOyPaz7xtfQ&r=FZ_tPCbgFOh18zwRPO9H0yDx8VW38vuapifdDfc8SFQ&m=fMY2AL-_MFowqy_OpcWEwioupC8kxy4GNU6R3LZP_2A&s=WCnFYbXTODzmkAWYDdBurNyAJ8Hxti2qkxXNnuoBic4&e= 
> > 
> > Adding deprication notice for the same in advance.
> > 
> > Signed-off-by: Nithin Dabilpuram <ndabilpuram@marvell.com>
> > ---
> >  doc/guides/rel_notes/deprecation.rst | 9 +++++++++
> >  1 file changed, 9 insertions(+)
> > 
> > diff --git a/doc/guides/rel_notes/deprecation.rst b/doc/guides/rel_notes/deprecation.rst
> > index 1339f54..8c90ec9 100644
> > --- a/doc/guides/rel_notes/deprecation.rst
> > +++ b/doc/guides/rel_notes/deprecation.rst
> > @@ -118,3 +118,12 @@ 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.
> > +
> > +* traffic manager: Based on the discussion in the thread
> > +  https://urldefense.proofpoint.com/v2/url?u=https-3A__mails.dpdk.org_archives_dev_2020-2DApril_164970.html&d=DwIDaQ&c=nKjWec2b6R0mOyPaz7xtfQ&r=FZ_tPCbgFOh18zwRPO9H0yDx8VW38vuapifdDfc8SFQ&m=fMY2AL-_MFowqy_OpcWEwioupC8kxy4GNU6R3LZP_2A&s=WCnFYbXTODzmkAWYDdBurNyAJ8Hxti2qkxXNnuoBic4&e=  it turns out that
> > +  all traffic manager API's in ``rte_tm.h`` were mistakenly made stable even
> > +  though the MAINTAINER's file and header file text mentions it to be still
> > +  experimental. Given that even now, both the maintainer and other contributor's
> > +  are inclined towards keeping those API's in experimental state till some more
> > +  releases in support of spec improvements, it is decided that all API's in
> > +  ``rte_tm.h`` will be marked back as experimental in v20.11 DPDK release.
> > 
> 
> Slightly wordy - suggest making it a small bit more concise as follows. 
> 
> * traffic manager: All traffic manager API's in ``rte_tm.h`` were mistakenly made 
>  abi stable in the v19.11 release. The TM maintainer and other contributor's have 
>  agreed to keep the TM API's as experimental in expectation of additional spec 
>  improvements. Therefore, all API's in ``rte_tm.h`` will be marked back as 
>  experimental in v20.11 DPDK release. For more detail, please see `the thread
>  <https://urldefense.proofpoint.com/v2/url?u=https-3A__mails.dpdk.org_archives_dev_2020-2DApril_164970.html&d=DwIDaQ&c=nKjWec2b6R0mOyPaz7xtfQ&r=FZ_tPCbgFOh18zwRPO9H0yDx8VW38vuapifdDfc8SFQ&m=fMY2AL-_MFowqy_OpcWEwioupC8kxy4GNU6R3LZP_2A&s=WCnFYbXTODzmkAWYDdBurNyAJ8Hxti2qkxXNnuoBic4&e= >`_.

Ack, will send v2.
> 
> Ray K

^ permalink raw reply	[flat|nested] 23+ messages in thread

* [dpdk-dev] [PATCH v2] doc: deprication notice to mark tm spec as experimental
  2020-05-01 17:16 [dpdk-dev] [PATCH] doc: deprication notice to mark tm spec as experimental Nithin Dabilpuram
  2020-05-05  6:47 ` Ray Kinsella
@ 2020-05-05  8:07 ` Nithin Dabilpuram
  2020-05-05  8:10   ` Ray Kinsella
  2020-05-05  8:55   ` Dumitrescu, Cristian
  2020-09-09 17:22 ` [dpdk-dev] [PATCH] ethdev: mark all traffic manager API " Nithin Dabilpuram
  2 siblings, 2 replies; 23+ messages in thread
From: Nithin Dabilpuram @ 2020-05-05  8:07 UTC (permalink / raw)
  To: ferruh.yigit, bruce.richardson, cristian.dumitrescu, thomas,
	bluca, jasvinder.singh, arybchenko, ray.kinsella, nhorman,
	ktraynor, david.marchand, John McNamara, Marko Kovacevic
  Cc: dev, jerinj, kkanas, Nithin Dabilpuram

From: Nithin Dabilpuram <ndabilpuram@marvell.com>

Based on the discussion in mail thread, it is concluded that
all traffic manager API's (rte_tm.h) need to be marked experimental
till few more releases to support further improvements to spec.

https://mails.dpdk.org/archives/dev/2020-April/164970.html

Adding deprication notice for the same in advance.

Signed-off-by: Nithin Dabilpuram <ndabilpuram@marvell.com>
---
 doc/guides/rel_notes/deprecation.rst | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/doc/guides/rel_notes/deprecation.rst b/doc/guides/rel_notes/deprecation.rst
index 1339f54..2c76f36 100644
--- a/doc/guides/rel_notes/deprecation.rst
+++ b/doc/guides/rel_notes/deprecation.rst
@@ -118,3 +118,10 @@ 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.
+
+* traffic manager: All traffic manager API's in ``rte_tm.h`` were mistakenly made
+  abi stable in the v19.11 release. The TM maintainer and other contributor's have
+  agreed to keep the TM API's as experimental in expectation of additional spec
+  improvements. Therefore, all API's in ``rte_tm.h`` will be marked back as
+  experimental in v20.11 DPDK release. For more details, please see `the thread
+  <https://mails.dpdk.org/archives/dev/2020-April/164970.html>`_.
-- 
2.8.4


^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [dpdk-dev] [PATCH v2] doc: deprication notice to mark tm spec as experimental
  2020-05-05  8:07 ` [dpdk-dev] [PATCH v2] " Nithin Dabilpuram
@ 2020-05-05  8:10   ` Ray Kinsella
  2020-05-05  8:55   ` Dumitrescu, Cristian
  1 sibling, 0 replies; 23+ messages in thread
From: Ray Kinsella @ 2020-05-05  8:10 UTC (permalink / raw)
  To: Nithin Dabilpuram, ferruh.yigit, bruce.richardson,
	cristian.dumitrescu, thomas, bluca, jasvinder.singh, arybchenko,
	ray.kinsella, nhorman, ktraynor, david.marchand, John McNamara,
	Marko Kovacevic
  Cc: dev, jerinj, kkanas, Nithin Dabilpuram



On 05/05/2020 09:07, Nithin Dabilpuram wrote:
> From: Nithin Dabilpuram <ndabilpuram@marvell.com>
> 
> Based on the discussion in mail thread, it is concluded that
> all traffic manager API's (rte_tm.h) need to be marked experimental
> till few more releases to support further improvements to spec.
> 
> https://mails.dpdk.org/archives/dev/2020-April/164970.html
> 
> Adding deprication notice for the same in advance.
> 
> Signed-off-by: Nithin Dabilpuram <ndabilpuram@marvell.com>
> ---
>  doc/guides/rel_notes/deprecation.rst | 7 +++++++
>  1 file changed, 7 insertions(+)
> 
> diff --git a/doc/guides/rel_notes/deprecation.rst b/doc/guides/rel_notes/deprecation.rst
> index 1339f54..2c76f36 100644
> --- a/doc/guides/rel_notes/deprecation.rst
> +++ b/doc/guides/rel_notes/deprecation.rst
> @@ -118,3 +118,10 @@ 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.
> +
> +* traffic manager: All traffic manager API's in ``rte_tm.h`` were mistakenly made
> +  abi stable in the v19.11 release. The TM maintainer and other contributor's have
> +  agreed to keep the TM API's as experimental in expectation of additional spec
> +  improvements. Therefore, all API's in ``rte_tm.h`` will be marked back as
> +  experimental in v20.11 DPDK release. For more details, please see `the thread
> +  <https://mails.dpdk.org/archives/dev/2020-April/164970.html>`_.
> 

Acked-by: Ray Kinsella <mdr@ashroe.eu>

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [dpdk-dev] [PATCH v2] doc: deprication notice to mark tm spec as experimental
  2020-05-05  8:07 ` [dpdk-dev] [PATCH v2] " Nithin Dabilpuram
  2020-05-05  8:10   ` Ray Kinsella
@ 2020-05-05  8:55   ` Dumitrescu, Cristian
  2020-05-21 10:49     ` Jerin Jacob
  1 sibling, 1 reply; 23+ messages in thread
From: Dumitrescu, Cristian @ 2020-05-05  8:55 UTC (permalink / raw)
  To: Nithin Dabilpuram, Yigit, Ferruh, Richardson, Bruce, thomas,
	bluca, Singh, Jasvinder, arybchenko, Kinsella, Ray, nhorman,
	ktraynor, david.marchand, Mcnamara, John, Kovacevic, Marko
  Cc: dev, jerinj, kkanas, Nithin Dabilpuram



> -----Original Message-----
> From: Nithin Dabilpuram <nithind1988@gmail.com>
> Sent: Tuesday, May 5, 2020 9:08 AM
> To: Yigit, Ferruh <ferruh.yigit@intel.com>; Richardson, Bruce
> <bruce.richardson@intel.com>; Dumitrescu, Cristian
> <cristian.dumitrescu@intel.com>; thomas@monjalon.net;
> bluca@debian.org; Singh, Jasvinder <jasvinder.singh@intel.com>;
> arybchenko@solarflare.com; Kinsella, Ray <ray.kinsella@intel.com>;
> nhorman@tuxdriver.com; ktraynor@redhat.com;
> david.marchand@redhat.com; Mcnamara, John
> <john.mcnamara@intel.com>; Kovacevic, Marko
> <marko.kovacevic@intel.com>
> Cc: dev@dpdk.org; jerinj@marvell.com; kkanas@marvell.com; Nithin
> Dabilpuram <ndabilpuram@marvell.com>
> Subject: [PATCH v2] doc: deprication notice to mark tm spec as experimental
> 
> From: Nithin Dabilpuram <ndabilpuram@marvell.com>
> 
> Based on the discussion in mail thread, it is concluded that
> all traffic manager API's (rte_tm.h) need to be marked experimental
> till few more releases to support further improvements to spec.
> 
> https://mails.dpdk.org/archives/dev/2020-April/164970.html
> 
> Adding deprication notice for the same in advance.
> 
> Signed-off-by: Nithin Dabilpuram <ndabilpuram@marvell.com>
> ---
>  doc/guides/rel_notes/deprecation.rst | 7 +++++++
>  1 file changed, 7 insertions(+)
> 
> diff --git a/doc/guides/rel_notes/deprecation.rst
> b/doc/guides/rel_notes/deprecation.rst
> index 1339f54..2c76f36 100644
> --- a/doc/guides/rel_notes/deprecation.rst
> +++ b/doc/guides/rel_notes/deprecation.rst
> @@ -118,3 +118,10 @@ 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.
> +
> +* traffic manager: All traffic manager API's in ``rte_tm.h`` were mistakenly
> made
> +  abi stable in the v19.11 release. The TM maintainer and other contributor's
> have
> +  agreed to keep the TM API's as experimental in expectation of additional
> spec
> +  improvements. Therefore, all API's in ``rte_tm.h`` will be marked back as
> +  experimental in v20.11 DPDK release. For more details, please see `the
> thread
> +  <https://mails.dpdk.org/archives/dev/2020-April/164970.html>`_.
> --
> 2.8.4

Acked-by: Cristian Dumitrescu <cristian.dumitrescu@intel.com>


^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [dpdk-dev] [PATCH v2] doc: deprication notice to mark tm spec as experimental
  2020-05-05  8:55   ` Dumitrescu, Cristian
@ 2020-05-21 10:49     ` Jerin Jacob
  2020-05-24 20:58       ` Nithin Kumar D
  2020-05-24 23:33       ` Thomas Monjalon
  0 siblings, 2 replies; 23+ messages in thread
From: Jerin Jacob @ 2020-05-21 10:49 UTC (permalink / raw)
  To: Dumitrescu, Cristian
  Cc: Nithin Dabilpuram, Yigit, Ferruh, Richardson, Bruce, thomas,
	bluca, Singh, Jasvinder, arybchenko, Kinsella, Ray, nhorman,
	ktraynor, david.marchand, Mcnamara, John, Kovacevic, Marko, dev,
	jerinj, kkanas, Nithin Dabilpuram

On Tue, May 5, 2020 at 2:25 PM Dumitrescu, Cristian
<cristian.dumitrescu@intel.com> wrote:
>
>
>
> > -----Original Message-----
> > From: Nithin Dabilpuram <nithind1988@gmail.com>
> > Sent: Tuesday, May 5, 2020 9:08 AM
> > To: Yigit, Ferruh <ferruh.yigit@intel.com>; Richardson, Bruce
> > <bruce.richardson@intel.com>; Dumitrescu, Cristian
> > <cristian.dumitrescu@intel.com>; thomas@monjalon.net;
> > bluca@debian.org; Singh, Jasvinder <jasvinder.singh@intel.com>;
> > arybchenko@solarflare.com; Kinsella, Ray <ray.kinsella@intel.com>;
> > nhorman@tuxdriver.com; ktraynor@redhat.com;
> > david.marchand@redhat.com; Mcnamara, John
> > <john.mcnamara@intel.com>; Kovacevic, Marko
> > <marko.kovacevic@intel.com>
> > Cc: dev@dpdk.org; jerinj@marvell.com; kkanas@marvell.com; Nithin
> > Dabilpuram <ndabilpuram@marvell.com>
> > Subject: [PATCH v2] doc: deprication notice to mark tm spec as experimental
> >
> > From: Nithin Dabilpuram <ndabilpuram@marvell.com>
> >
> > Based on the discussion in mail thread, it is concluded that
> > all traffic manager API's (rte_tm.h) need to be marked experimental
> > till few more releases to support further improvements to spec.
> >
> > https://mails.dpdk.org/archives/dev/2020-April/164970.html
> >
> > Adding deprication notice for the same in advance.
> >
> > Signed-off-by: Nithin Dabilpuram <ndabilpuram@marvell.com>
> > ---
> >  doc/guides/rel_notes/deprecation.rst | 7 +++++++
> >  1 file changed, 7 insertions(+)
> >
> > diff --git a/doc/guides/rel_notes/deprecation.rst
> > b/doc/guides/rel_notes/deprecation.rst
> > index 1339f54..2c76f36 100644
> > --- a/doc/guides/rel_notes/deprecation.rst
> > +++ b/doc/guides/rel_notes/deprecation.rst
> > @@ -118,3 +118,10 @@ 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.
> > +
> > +* traffic manager: All traffic manager API's in ``rte_tm.h`` were mistakenly
> > made
> > +  abi stable in the v19.11 release. The TM maintainer and other contributor's
> > have
> > +  agreed to keep the TM API's as experimental in expectation of additional
> > spec
> > +  improvements. Therefore, all API's in ``rte_tm.h`` will be marked back as
> > +  experimental in v20.11 DPDK release. For more details, please see `the
> > thread
> > +  <https://mails.dpdk.org/archives/dev/2020-April/164970.html>`_.
> > --
> > 2.8.4
>
> Acked-by: Cristian Dumitrescu <cristian.dumitrescu@intel.com>
Acked-by: Jerin Jacob <jerinj@marvell.com>


>

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [dpdk-dev] [PATCH v2] doc: deprication notice to mark tm spec as experimental
  2020-05-21 10:49     ` Jerin Jacob
@ 2020-05-24 20:58       ` Nithin Kumar D
  2020-05-24 23:33       ` Thomas Monjalon
  1 sibling, 0 replies; 23+ messages in thread
From: Nithin Kumar D @ 2020-05-24 20:58 UTC (permalink / raw)
  To: Jerin Jacob
  Cc: Dumitrescu, Cristian, Yigit, Ferruh, Richardson, Bruce, thomas,
	bluca, Singh, Jasvinder, arybchenko, Kinsella, Ray, nhorman,
	ktraynor, david.marchand, Mcnamara, John, Kovacevic, Marko, dev,
	jerinj, kkanas, Nithin Dabilpuram

Hi Thomas,

Can this be merged as it was discussed and agreed long back.

--
Nithin

On Thu, May 21, 2020, 16:19 Jerin Jacob <jerinjacobk@gmail.com> wrote:

> On Tue, May 5, 2020 at 2:25 PM Dumitrescu, Cristian
> <cristian.dumitrescu@intel.com> wrote:
> >
> >
> >
> > > -----Original Message-----
> > > From: Nithin Dabilpuram <nithind1988@gmail.com>
> > > Sent: Tuesday, May 5, 2020 9:08 AM
> > > To: Yigit, Ferruh <ferruh.yigit@intel.com>; Richardson, Bruce
> > > <bruce.richardson@intel.com>; Dumitrescu, Cristian
> > > <cristian.dumitrescu@intel.com>; thomas@monjalon.net;
> > > bluca@debian.org; Singh, Jasvinder <jasvinder.singh@intel.com>;
> > > arybchenko@solarflare.com; Kinsella, Ray <ray.kinsella@intel.com>;
> > > nhorman@tuxdriver.com; ktraynor@redhat.com;
> > > david.marchand@redhat.com; Mcnamara, John
> > > <john.mcnamara@intel.com>; Kovacevic, Marko
> > > <marko.kovacevic@intel.com>
> > > Cc: dev@dpdk.org; jerinj@marvell.com; kkanas@marvell.com; Nithin
> > > Dabilpuram <ndabilpuram@marvell.com>
> > > Subject: [PATCH v2] doc: deprication notice to mark tm spec as
> experimental
> > >
> > > From: Nithin Dabilpuram <ndabilpuram@marvell.com>
> > >
> > > Based on the discussion in mail thread, it is concluded that
> > > all traffic manager API's (rte_tm.h) need to be marked experimental
> > > till few more releases to support further improvements to spec.
> > >
> > > https://mails.dpdk.org/archives/dev/2020-April/164970.html
> > >
> > > Adding deprication notice for the same in advance.
> > >
> > > Signed-off-by: Nithin Dabilpuram <ndabilpuram@marvell.com>
> > > ---
> > >  doc/guides/rel_notes/deprecation.rst | 7 +++++++
> > >  1 file changed, 7 insertions(+)
> > >
> > > diff --git a/doc/guides/rel_notes/deprecation.rst
> > > b/doc/guides/rel_notes/deprecation.rst
> > > index 1339f54..2c76f36 100644
> > > --- a/doc/guides/rel_notes/deprecation.rst
> > > +++ b/doc/guides/rel_notes/deprecation.rst
> > > @@ -118,3 +118,10 @@ 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.
> > > +
> > > +* traffic manager: All traffic manager API's in ``rte_tm.h`` were
> mistakenly
> > > made
> > > +  abi stable in the v19.11 release. The TM maintainer and other
> contributor's
> > > have
> > > +  agreed to keep the TM API's as experimental in expectation of
> additional
> > > spec
> > > +  improvements. Therefore, all API's in ``rte_tm.h`` will be marked
> back as
> > > +  experimental in v20.11 DPDK release. For more details, please see
> `the
> > > thread
> > > +  <https://mails.dpdk.org/archives/dev/2020-April/164970.html>`_.
> > > --
> > > 2.8.4
> >
> > Acked-by: Cristian Dumitrescu <cristian.dumitrescu@intel.com>
> Acked-by: Jerin Jacob <jerinj@marvell.com>
>
>
> >
>

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [dpdk-dev] [PATCH v2] doc: deprication notice to mark tm spec as experimental
  2020-05-21 10:49     ` Jerin Jacob
  2020-05-24 20:58       ` Nithin Kumar D
@ 2020-05-24 23:33       ` Thomas Monjalon
  1 sibling, 0 replies; 23+ messages in thread
From: Thomas Monjalon @ 2020-05-24 23:33 UTC (permalink / raw)
  To: Nithin Dabilpuram
  Cc: Dumitrescu, Cristian, dev, Nithin Dabilpuram, Yigit, Ferruh,
	Richardson, Bruce, bluca, Singh, Jasvinder, arybchenko, Kinsella,
	Ray, nhorman, ktraynor, david.marchand, Mcnamara, John,
	Kovacevic, Marko, dev, jerinj, kkanas, Jerin Jacob

> > > From: Nithin Dabilpuram <ndabilpuram@marvell.com>
> > >
> > > Based on the discussion in mail thread, it is concluded that
> > > all traffic manager API's (rte_tm.h) need to be marked experimental
> > > till few more releases to support further improvements to spec.
> > >
> > > https://mails.dpdk.org/archives/dev/2020-April/164970.html
> > >
> > > Adding deprication notice for the same in advance.
> > >
> > > Signed-off-by: Nithin Dabilpuram <ndabilpuram@marvell.com>
> > > ---
> > > +* traffic manager: All traffic manager API's in ``rte_tm.h`` were mistakenly
> > > made
> > > +  abi stable in the v19.11 release. The TM maintainer and other contributor's
> > > have
> > > +  agreed to keep the TM API's as experimental in expectation of additional
> > > spec
> > > +  improvements. Therefore, all API's in ``rte_tm.h`` will be marked back as
> > > +  experimental in v20.11 DPDK release. For more details, please see `the
> > > thread
> > > +  <https://mails.dpdk.org/archives/dev/2020-April/164970.html>`_.
> >
> > Acked-by: Cristian Dumitrescu <cristian.dumitrescu@intel.com>
> Acked-by: Jerin Jacob <jerinj@marvell.com>
Acked-by: Ray Kinsella <mdr@ashroe.eu>

Applied, thanks



^ permalink raw reply	[flat|nested] 23+ messages in thread

* [dpdk-dev] [PATCH] ethdev: mark all traffic manager API as experimental
  2020-05-01 17:16 [dpdk-dev] [PATCH] doc: deprication notice to mark tm spec as experimental Nithin Dabilpuram
  2020-05-05  6:47 ` Ray Kinsella
  2020-05-05  8:07 ` [dpdk-dev] [PATCH v2] " Nithin Dabilpuram
@ 2020-09-09 17:22 ` Nithin Dabilpuram
  2020-09-09 17:49   ` Dumitrescu, Cristian
                     ` (3 more replies)
  2 siblings, 4 replies; 23+ messages in thread
From: Nithin Dabilpuram @ 2020-09-09 17:22 UTC (permalink / raw)
  To: ferruh.yigit, bruce.richardson, cristian.dumitrescu, thomas,
	bluca, jasvinder.singh, arybchenko, ray.kinsella, nhorman,
	ktraynor, david.marchand, Ray Kinsella
  Cc: dev, jerinj, Nithin Dabilpuram

This patch marks all traffic manager API as experimental as
per deprecation notice[1] and discussion[2] mentioned in following
threads.

[1] https://mails.dpdk.org/archives/dev/2020-May/166221.html
[2] https://mails.dpdk.org/archives/dev/2020-April/165364.html

Signed-off-by: Nithin Dabilpuram <ndabilpuram@marvell.com>
---
 lib/librte_ethdev/rte_ethdev_version.map | 62 ++++++++++++++++----------------
 lib/librte_ethdev/rte_tm.h               | 33 ++++++++++++++++-
 2 files changed, 64 insertions(+), 31 deletions(-)

diff --git a/lib/librte_ethdev/rte_ethdev_version.map b/lib/librte_ethdev/rte_ethdev_version.map
index 1212a17..3da4512 100644
--- a/lib/librte_ethdev/rte_ethdev_version.map
+++ b/lib/librte_ethdev/rte_ethdev_version.map
@@ -135,36 +135,6 @@ DPDK_20.0 {
 	rte_flow_isolate;
 	rte_flow_query;
 	rte_flow_validate;
-	rte_tm_capabilities_get;
-	rte_tm_get_number_of_leaf_nodes;
-	rte_tm_hierarchy_commit;
-	rte_tm_level_capabilities_get;
-	rte_tm_mark_ip_dscp;
-	rte_tm_mark_ip_ecn;
-	rte_tm_mark_vlan_dei;
-	rte_tm_node_add;
-	rte_tm_node_capabilities_get;
-	rte_tm_node_cman_update;
-	rte_tm_node_delete;
-	rte_tm_node_parent_update;
-	rte_tm_node_resume;
-	rte_tm_node_shaper_update;
-	rte_tm_node_shared_shaper_update;
-	rte_tm_node_shared_wred_context_update;
-	rte_tm_node_stats_read;
-	rte_tm_node_stats_update;
-	rte_tm_node_suspend;
-	rte_tm_node_type_get;
-	rte_tm_node_wfq_weight_mode_update;
-	rte_tm_node_wred_context_update;
-	rte_tm_shaper_profile_add;
-	rte_tm_shaper_profile_delete;
-	rte_tm_shared_shaper_add_update;
-	rte_tm_shared_shaper_delete;
-	rte_tm_shared_wred_context_add_update;
-	rte_tm_shared_wred_context_delete;
-	rte_tm_wred_profile_add;
-	rte_tm_wred_profile_delete;
 
 	local: *;
 };
@@ -241,6 +211,38 @@ EXPERIMENTAL {
 	__rte_ethdev_trace_rx_burst;
 	__rte_ethdev_trace_tx_burst;
 	rte_flow_get_aged_flows;
+
+	# Marked as experimental in 20.11
+	rte_tm_capabilities_get;
+	rte_tm_get_number_of_leaf_nodes;
+	rte_tm_hierarchy_commit;
+	rte_tm_level_capabilities_get;
+	rte_tm_mark_ip_dscp;
+	rte_tm_mark_ip_ecn;
+	rte_tm_mark_vlan_dei;
+	rte_tm_node_add;
+	rte_tm_node_capabilities_get;
+	rte_tm_node_cman_update;
+	rte_tm_node_delete;
+	rte_tm_node_parent_update;
+	rte_tm_node_resume;
+	rte_tm_node_shaper_update;
+	rte_tm_node_shared_shaper_update;
+	rte_tm_node_shared_wred_context_update;
+	rte_tm_node_stats_read;
+	rte_tm_node_stats_update;
+	rte_tm_node_suspend;
+	rte_tm_node_type_get;
+	rte_tm_node_wfq_weight_mode_update;
+	rte_tm_node_wred_context_update;
+	rte_tm_shaper_profile_add;
+	rte_tm_shaper_profile_delete;
+	rte_tm_shared_shaper_add_update;
+	rte_tm_shared_shaper_delete;
+	rte_tm_shared_wred_context_add_update;
+	rte_tm_shared_wred_context_delete;
+	rte_tm_wred_profile_add;
+	rte_tm_wred_profile_delete;
 };
 
 INTERNAL {
diff --git a/lib/librte_ethdev/rte_tm.h b/lib/librte_ethdev/rte_tm.h
index f9c0cf3..c80c0bc 100644
--- a/lib/librte_ethdev/rte_tm.h
+++ b/lib/librte_ethdev/rte_tm.h
@@ -16,7 +16,8 @@
  * traffic shaping, congestion management, packet marking, etc.
  *
  * @warning
- * @b EXPERIMENTAL: this API may change without prior notice
+ * @b EXPERIMENTAL:
+ * All functions in this file may be changed or removed without prior notice.
  */
 
 #include <stdint.h>
@@ -1050,6 +1051,7 @@ struct rte_tm_error {
  * @return
  *   0 on success, non-zero error code otherwise.
  */
+__rte_experimental
 int
 rte_tm_get_number_of_leaf_nodes(uint16_t port_id,
 	uint32_t *n_leaf_nodes,
@@ -1074,6 +1076,7 @@ rte_tm_get_number_of_leaf_nodes(uint16_t port_id,
  * @return
  *   0 on success, non-zero error code otherwise.
  */
+__rte_experimental
 int
 rte_tm_node_type_get(uint16_t port_id,
 	uint32_t node_id,
@@ -1092,6 +1095,7 @@ rte_tm_node_type_get(uint16_t port_id,
  * @return
  *   0 on success, non-zero error code otherwise.
  */
+__rte_experimental
 int
 rte_tm_capabilities_get(uint16_t port_id,
 	struct rte_tm_capabilities *cap,
@@ -1112,6 +1116,7 @@ rte_tm_capabilities_get(uint16_t port_id,
  * @return
  *   0 on success, non-zero error code otherwise.
  */
+__rte_experimental
 int
 rte_tm_level_capabilities_get(uint16_t port_id,
 	uint32_t level_id,
@@ -1132,6 +1137,7 @@ rte_tm_level_capabilities_get(uint16_t port_id,
  * @return
  *   0 on success, non-zero error code otherwise.
  */
+__rte_experimental
 int
 rte_tm_node_capabilities_get(uint16_t port_id,
 	uint32_t node_id,
@@ -1157,6 +1163,7 @@ rte_tm_node_capabilities_get(uint16_t port_id,
  *
  * @see struct rte_tm_capabilities::cman_wred_context_n_max
  */
+__rte_experimental
 int
 rte_tm_wred_profile_add(uint16_t port_id,
 	uint32_t wred_profile_id,
@@ -1180,6 +1187,7 @@ rte_tm_wred_profile_add(uint16_t port_id,
  *
  * @see struct rte_tm_capabilities::cman_wred_context_n_max
  */
+__rte_experimental
 int
 rte_tm_wred_profile_delete(uint16_t port_id,
 	uint32_t wred_profile_id,
@@ -1211,6 +1219,7 @@ rte_tm_wred_profile_delete(uint16_t port_id,
  *
  * @see struct rte_tm_capabilities::cman_wred_context_shared_n_max
  */
+__rte_experimental
 int
 rte_tm_shared_wred_context_add_update(uint16_t port_id,
 	uint32_t shared_wred_context_id,
@@ -1235,6 +1244,7 @@ rte_tm_shared_wred_context_add_update(uint16_t port_id,
  *
  * @see struct rte_tm_capabilities::cman_wred_context_shared_n_max
  */
+__rte_experimental
 int
 rte_tm_shared_wred_context_delete(uint16_t port_id,
 	uint32_t shared_wred_context_id,
@@ -1259,6 +1269,7 @@ rte_tm_shared_wred_context_delete(uint16_t port_id,
  *
  * @see struct rte_tm_capabilities::shaper_n_max
  */
+__rte_experimental
 int
 rte_tm_shaper_profile_add(uint16_t port_id,
 	uint32_t shaper_profile_id,
@@ -1282,6 +1293,7 @@ rte_tm_shaper_profile_add(uint16_t port_id,
  *
  * @see struct rte_tm_capabilities::shaper_n_max
  */
+__rte_experimental
 int
 rte_tm_shaper_profile_delete(uint16_t port_id,
 	uint32_t shaper_profile_id,
@@ -1311,6 +1323,7 @@ rte_tm_shaper_profile_delete(uint16_t port_id,
  *
  * @see struct rte_tm_capabilities::shaper_shared_n_max
  */
+__rte_experimental
 int
 rte_tm_shared_shaper_add_update(uint16_t port_id,
 	uint32_t shared_shaper_id,
@@ -1334,6 +1347,7 @@ rte_tm_shared_shaper_add_update(uint16_t port_id,
  *
  * @see struct rte_tm_capabilities::shaper_shared_n_max
  */
+__rte_experimental
 int
 rte_tm_shared_shaper_delete(uint16_t port_id,
 	uint32_t shared_shaper_id,
@@ -1402,6 +1416,7 @@ rte_tm_shared_shaper_delete(uint16_t port_id,
  * @see RTE_TM_NODE_LEVEL_ID_ANY
  * @see struct rte_tm_capabilities
  */
+__rte_experimental
 int
 rte_tm_node_add(uint16_t port_id,
 	uint32_t node_id,
@@ -1435,6 +1450,7 @@ rte_tm_node_add(uint16_t port_id,
  *
  * @see RTE_TM_UPDATE_NODE_ADD_DELETE
  */
+__rte_experimental
 int
 rte_tm_node_delete(uint16_t port_id,
 	uint32_t node_id,
@@ -1459,6 +1475,7 @@ rte_tm_node_delete(uint16_t port_id,
  * @see rte_tm_node_resume()
  * @see RTE_TM_UPDATE_NODE_SUSPEND_RESUME
  */
+__rte_experimental
 int
 rte_tm_node_suspend(uint16_t port_id,
 	uint32_t node_id,
@@ -1482,6 +1499,7 @@ rte_tm_node_suspend(uint16_t port_id,
  * @see rte_tm_node_suspend()
  * @see RTE_TM_UPDATE_NODE_SUSPEND_RESUME
  */
+__rte_experimental
 int
 rte_tm_node_resume(uint16_t port_id,
 	uint32_t node_id,
@@ -1523,6 +1541,7 @@ rte_tm_node_resume(uint16_t port_id,
  * @see rte_tm_node_add()
  * @see rte_tm_node_delete()
  */
+__rte_experimental
 int
 rte_tm_hierarchy_commit(uint16_t port_id,
 	int clear_on_fail,
@@ -1563,6 +1582,7 @@ rte_tm_hierarchy_commit(uint16_t port_id,
  * @see RTE_TM_UPDATE_NODE_PARENT_KEEP_LEVEL
  * @see RTE_TM_UPDATE_NODE_PARENT_CHANGE_LEVEL
  */
+__rte_experimental
 int
 rte_tm_node_parent_update(uint16_t port_id,
 	uint32_t node_id,
@@ -1592,6 +1612,7 @@ rte_tm_node_parent_update(uint16_t port_id,
  *
  * @see struct rte_tm_capabilities::shaper_private_n_max
  */
+__rte_experimental
 int
 rte_tm_node_shaper_update(uint16_t port_id,
 	uint32_t node_id,
@@ -1619,6 +1640,7 @@ rte_tm_node_shaper_update(uint16_t port_id,
  *
  * @see struct rte_tm_capabilities::shaper_shared_n_max
  */
+__rte_experimental
 int
 rte_tm_node_shared_shaper_update(uint16_t port_id,
 	uint32_t node_id,
@@ -1646,6 +1668,7 @@ rte_tm_node_shared_shaper_update(uint16_t port_id,
  * @see enum rte_tm_stats_type
  * @see RTE_TM_UPDATE_NODE_STATS
  */
+__rte_experimental
 int
 rte_tm_node_stats_update(uint16_t port_id,
 	uint32_t node_id,
@@ -1674,6 +1697,7 @@ rte_tm_node_stats_update(uint16_t port_id,
  * @see RTE_TM_UPDATE_NODE_WFQ_WEIGHT_MODE
  * @see RTE_TM_UPDATE_NODE_N_SP_PRIORITIES
  */
+__rte_experimental
 int
 rte_tm_node_wfq_weight_mode_update(uint16_t port_id,
 	uint32_t node_id,
@@ -1697,6 +1721,7 @@ rte_tm_node_wfq_weight_mode_update(uint16_t port_id,
  *
  * @see RTE_TM_UPDATE_NODE_CMAN
  */
+__rte_experimental
 int
 rte_tm_node_cman_update(uint16_t port_id,
 	uint32_t node_id,
@@ -1721,6 +1746,7 @@ rte_tm_node_cman_update(uint16_t port_id,
   *
  * @see struct rte_tm_capabilities::cman_wred_context_private_n_max
 */
+__rte_experimental
 int
 rte_tm_node_wred_context_update(uint16_t port_id,
 	uint32_t node_id,
@@ -1746,6 +1772,7 @@ rte_tm_node_wred_context_update(uint16_t port_id,
  *
  * @see struct rte_tm_capabilities::cman_wred_context_shared_n_max
  */
+__rte_experimental
 int
 rte_tm_node_shared_wred_context_update(uint16_t port_id,
 	uint32_t node_id,
@@ -1778,6 +1805,7 @@ rte_tm_node_shared_wred_context_update(uint16_t port_id,
  *
  * @see enum rte_tm_stats_type
  */
+__rte_experimental
 int
 rte_tm_node_stats_read(uint16_t port_id,
 	uint32_t node_id,
@@ -1815,6 +1843,7 @@ rte_tm_node_stats_read(uint16_t port_id,
  *
  * @see struct rte_tm_capabilities::mark_vlan_dei_supported
  */
+__rte_experimental
 int
 rte_tm_mark_vlan_dei(uint16_t port_id,
 	int mark_green,
@@ -1865,6 +1894,7 @@ rte_tm_mark_vlan_dei(uint16_t port_id,
  * @see struct rte_tm_capabilities::mark_ip_ecn_tcp_supported
  * @see struct rte_tm_capabilities::mark_ip_ecn_sctp_supported
  */
+__rte_experimental
 int
 rte_tm_mark_ip_ecn(uint16_t port_id,
 	int mark_green,
@@ -1913,6 +1943,7 @@ rte_tm_mark_ip_ecn(uint16_t port_id,
  *
  * @see struct rte_tm_capabilities::mark_ip_dscp_supported
  */
+__rte_experimental
 int
 rte_tm_mark_ip_dscp(uint16_t port_id,
 	int mark_green,
-- 
2.8.4


^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [dpdk-dev] [PATCH] ethdev: mark all traffic manager API as experimental
  2020-09-09 17:22 ` [dpdk-dev] [PATCH] ethdev: mark all traffic manager API " Nithin Dabilpuram
@ 2020-09-09 17:49   ` Dumitrescu, Cristian
  2020-09-09 18:23   ` Ferruh Yigit
                     ` (2 subsequent siblings)
  3 siblings, 0 replies; 23+ messages in thread
From: Dumitrescu, Cristian @ 2020-09-09 17:49 UTC (permalink / raw)
  To: Nithin Dabilpuram, Yigit, Ferruh, Richardson, Bruce, thomas,
	bluca, Singh, Jasvinder, arybchenko, Kinsella, Ray, nhorman,
	ktraynor, david.marchand, Ray Kinsella
  Cc: dev, jerinj



> -----Original Message-----
> From: Nithin Dabilpuram <ndabilpuram@marvell.com>
> Sent: Wednesday, September 9, 2020 6:22 PM
> To: Yigit, Ferruh <ferruh.yigit@intel.com>; Richardson, Bruce
> <bruce.richardson@intel.com>; Dumitrescu, Cristian
> <cristian.dumitrescu@intel.com>; thomas@monjalon.net;
> bluca@debian.org; Singh, Jasvinder <jasvinder.singh@intel.com>;
> arybchenko@solarflare.com; Kinsella, Ray <ray.kinsella@intel.com>;
> nhorman@tuxdriver.com; ktraynor@redhat.com;
> david.marchand@redhat.com; Ray Kinsella <mdr@ashroe.eu>
> Cc: dev@dpdk.org; jerinj@marvell.com; Nithin Dabilpuram
> <ndabilpuram@marvell.com>
> Subject: [PATCH] ethdev: mark all traffic manager API as experimental
> 
> This patch marks all traffic manager API as experimental as
> per deprecation notice[1] and discussion[2] mentioned in following
> threads.
> 
> [1] https://mails.dpdk.org/archives/dev/2020-May/166221.html
> [2] https://mails.dpdk.org/archives/dev/2020-April/165364.html
> 
> Signed-off-by: Nithin Dabilpuram <ndabilpuram@marvell.com>
> ---
>  lib/librte_ethdev/rte_ethdev_version.map | 62 ++++++++++++++++---------
> -------
>  lib/librte_ethdev/rte_tm.h               | 33 ++++++++++++++++-
>  2 files changed, 64 insertions(+), 31 deletions(-)
> 
> diff --git a/lib/librte_ethdev/rte_ethdev_version.map
> b/lib/librte_ethdev/rte_ethdev_version.map
> index 1212a17..3da4512 100644
> --- a/lib/librte_ethdev/rte_ethdev_version.map
> +++ b/lib/librte_ethdev/rte_ethdev_version.map

Acked-by: Cristian Dumitrescu <cristian.dumitrescu@intel.com>


^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [dpdk-dev] [PATCH] ethdev: mark all traffic manager API as experimental
  2020-09-09 17:22 ` [dpdk-dev] [PATCH] ethdev: mark all traffic manager API " Nithin Dabilpuram
  2020-09-09 17:49   ` Dumitrescu, Cristian
@ 2020-09-09 18:23   ` Ferruh Yigit
  2020-09-10  8:05   ` [dpdk-dev] [PATCH v2] " Nithin Dabilpuram
  2020-09-10 10:09   ` [dpdk-dev] [PATCH v3] " Nithin Dabilpuram
  3 siblings, 0 replies; 23+ messages in thread
From: Ferruh Yigit @ 2020-09-09 18:23 UTC (permalink / raw)
  To: Nithin Dabilpuram, bruce.richardson, cristian.dumitrescu, thomas,
	bluca, jasvinder.singh, arybchenko, ray.kinsella, nhorman,
	ktraynor, david.marchand, Ray Kinsella
  Cc: dev, jerinj

On 9/9/2020 6:22 PM, Nithin Dabilpuram wrote:
> This patch marks all traffic manager API as experimental as
> per deprecation notice[1] and discussion[2] mentioned in following
> threads.

Can you please remove mentioned deprecation notice in this patch?

> 
> [1] https://mails.dpdk.org/archives/dev/2020-May/166221.html
> [2] https://mails.dpdk.org/archives/dev/2020-April/165364.html
> 
> Signed-off-by: Nithin Dabilpuram <ndabilpuram@marvell.com>

<...>


^ permalink raw reply	[flat|nested] 23+ messages in thread

* [dpdk-dev] [PATCH v2] ethdev: mark all traffic manager API as experimental
  2020-09-09 17:22 ` [dpdk-dev] [PATCH] ethdev: mark all traffic manager API " Nithin Dabilpuram
  2020-09-09 17:49   ` Dumitrescu, Cristian
  2020-09-09 18:23   ` Ferruh Yigit
@ 2020-09-10  8:05   ` Nithin Dabilpuram
  2020-09-10  8:30     ` Kinsella, Ray
  2020-09-10  8:36     ` [dpdk-dev] " Ferruh Yigit
  2020-09-10 10:09   ` [dpdk-dev] [PATCH v3] " Nithin Dabilpuram
  3 siblings, 2 replies; 23+ messages in thread
From: Nithin Dabilpuram @ 2020-09-10  8:05 UTC (permalink / raw)
  To: ferruh.yigit, bruce.richardson, cristian.dumitrescu, thomas,
	bluca, jasvinder.singh, arybchenko, ray.kinsella, nhorman,
	ktraynor, david.marchand, Ray Kinsella
  Cc: dev, jerinj, Nithin Dabilpuram

This patch marks all traffic manager API as experimental as
per discussion mentioned in below thread.

https://mails.dpdk.org/archives/dev/2020-April/165364.html

Signed-off-by: Nithin Dabilpuram <ndabilpuram@marvell.com>
---

v2:
- Updated commit message.

 lib/librte_ethdev/rte_ethdev_version.map | 62 ++++++++++++++++----------------
 lib/librte_ethdev/rte_tm.h               | 33 ++++++++++++++++-
 2 files changed, 64 insertions(+), 31 deletions(-)

diff --git a/lib/librte_ethdev/rte_ethdev_version.map b/lib/librte_ethdev/rte_ethdev_version.map
index 1212a17..3da4512 100644
--- a/lib/librte_ethdev/rte_ethdev_version.map
+++ b/lib/librte_ethdev/rte_ethdev_version.map
@@ -135,36 +135,6 @@ DPDK_20.0 {
 	rte_flow_isolate;
 	rte_flow_query;
 	rte_flow_validate;
-	rte_tm_capabilities_get;
-	rte_tm_get_number_of_leaf_nodes;
-	rte_tm_hierarchy_commit;
-	rte_tm_level_capabilities_get;
-	rte_tm_mark_ip_dscp;
-	rte_tm_mark_ip_ecn;
-	rte_tm_mark_vlan_dei;
-	rte_tm_node_add;
-	rte_tm_node_capabilities_get;
-	rte_tm_node_cman_update;
-	rte_tm_node_delete;
-	rte_tm_node_parent_update;
-	rte_tm_node_resume;
-	rte_tm_node_shaper_update;
-	rte_tm_node_shared_shaper_update;
-	rte_tm_node_shared_wred_context_update;
-	rte_tm_node_stats_read;
-	rte_tm_node_stats_update;
-	rte_tm_node_suspend;
-	rte_tm_node_type_get;
-	rte_tm_node_wfq_weight_mode_update;
-	rte_tm_node_wred_context_update;
-	rte_tm_shaper_profile_add;
-	rte_tm_shaper_profile_delete;
-	rte_tm_shared_shaper_add_update;
-	rte_tm_shared_shaper_delete;
-	rte_tm_shared_wred_context_add_update;
-	rte_tm_shared_wred_context_delete;
-	rte_tm_wred_profile_add;
-	rte_tm_wred_profile_delete;
 
 	local: *;
 };
@@ -241,6 +211,38 @@ EXPERIMENTAL {
 	__rte_ethdev_trace_rx_burst;
 	__rte_ethdev_trace_tx_burst;
 	rte_flow_get_aged_flows;
+
+	# Marked as experimental in 20.11
+	rte_tm_capabilities_get;
+	rte_tm_get_number_of_leaf_nodes;
+	rte_tm_hierarchy_commit;
+	rte_tm_level_capabilities_get;
+	rte_tm_mark_ip_dscp;
+	rte_tm_mark_ip_ecn;
+	rte_tm_mark_vlan_dei;
+	rte_tm_node_add;
+	rte_tm_node_capabilities_get;
+	rte_tm_node_cman_update;
+	rte_tm_node_delete;
+	rte_tm_node_parent_update;
+	rte_tm_node_resume;
+	rte_tm_node_shaper_update;
+	rte_tm_node_shared_shaper_update;
+	rte_tm_node_shared_wred_context_update;
+	rte_tm_node_stats_read;
+	rte_tm_node_stats_update;
+	rte_tm_node_suspend;
+	rte_tm_node_type_get;
+	rte_tm_node_wfq_weight_mode_update;
+	rte_tm_node_wred_context_update;
+	rte_tm_shaper_profile_add;
+	rte_tm_shaper_profile_delete;
+	rte_tm_shared_shaper_add_update;
+	rte_tm_shared_shaper_delete;
+	rte_tm_shared_wred_context_add_update;
+	rte_tm_shared_wred_context_delete;
+	rte_tm_wred_profile_add;
+	rte_tm_wred_profile_delete;
 };
 
 INTERNAL {
diff --git a/lib/librte_ethdev/rte_tm.h b/lib/librte_ethdev/rte_tm.h
index f9c0cf3..c80c0bc 100644
--- a/lib/librte_ethdev/rte_tm.h
+++ b/lib/librte_ethdev/rte_tm.h
@@ -16,7 +16,8 @@
  * traffic shaping, congestion management, packet marking, etc.
  *
  * @warning
- * @b EXPERIMENTAL: this API may change without prior notice
+ * @b EXPERIMENTAL:
+ * All functions in this file may be changed or removed without prior notice.
  */
 
 #include <stdint.h>
@@ -1050,6 +1051,7 @@ struct rte_tm_error {
  * @return
  *   0 on success, non-zero error code otherwise.
  */
+__rte_experimental
 int
 rte_tm_get_number_of_leaf_nodes(uint16_t port_id,
 	uint32_t *n_leaf_nodes,
@@ -1074,6 +1076,7 @@ rte_tm_get_number_of_leaf_nodes(uint16_t port_id,
  * @return
  *   0 on success, non-zero error code otherwise.
  */
+__rte_experimental
 int
 rte_tm_node_type_get(uint16_t port_id,
 	uint32_t node_id,
@@ -1092,6 +1095,7 @@ rte_tm_node_type_get(uint16_t port_id,
  * @return
  *   0 on success, non-zero error code otherwise.
  */
+__rte_experimental
 int
 rte_tm_capabilities_get(uint16_t port_id,
 	struct rte_tm_capabilities *cap,
@@ -1112,6 +1116,7 @@ rte_tm_capabilities_get(uint16_t port_id,
  * @return
  *   0 on success, non-zero error code otherwise.
  */
+__rte_experimental
 int
 rte_tm_level_capabilities_get(uint16_t port_id,
 	uint32_t level_id,
@@ -1132,6 +1137,7 @@ rte_tm_level_capabilities_get(uint16_t port_id,
  * @return
  *   0 on success, non-zero error code otherwise.
  */
+__rte_experimental
 int
 rte_tm_node_capabilities_get(uint16_t port_id,
 	uint32_t node_id,
@@ -1157,6 +1163,7 @@ rte_tm_node_capabilities_get(uint16_t port_id,
  *
  * @see struct rte_tm_capabilities::cman_wred_context_n_max
  */
+__rte_experimental
 int
 rte_tm_wred_profile_add(uint16_t port_id,
 	uint32_t wred_profile_id,
@@ -1180,6 +1187,7 @@ rte_tm_wred_profile_add(uint16_t port_id,
  *
  * @see struct rte_tm_capabilities::cman_wred_context_n_max
  */
+__rte_experimental
 int
 rte_tm_wred_profile_delete(uint16_t port_id,
 	uint32_t wred_profile_id,
@@ -1211,6 +1219,7 @@ rte_tm_wred_profile_delete(uint16_t port_id,
  *
  * @see struct rte_tm_capabilities::cman_wred_context_shared_n_max
  */
+__rte_experimental
 int
 rte_tm_shared_wred_context_add_update(uint16_t port_id,
 	uint32_t shared_wred_context_id,
@@ -1235,6 +1244,7 @@ rte_tm_shared_wred_context_add_update(uint16_t port_id,
  *
  * @see struct rte_tm_capabilities::cman_wred_context_shared_n_max
  */
+__rte_experimental
 int
 rte_tm_shared_wred_context_delete(uint16_t port_id,
 	uint32_t shared_wred_context_id,
@@ -1259,6 +1269,7 @@ rte_tm_shared_wred_context_delete(uint16_t port_id,
  *
  * @see struct rte_tm_capabilities::shaper_n_max
  */
+__rte_experimental
 int
 rte_tm_shaper_profile_add(uint16_t port_id,
 	uint32_t shaper_profile_id,
@@ -1282,6 +1293,7 @@ rte_tm_shaper_profile_add(uint16_t port_id,
  *
  * @see struct rte_tm_capabilities::shaper_n_max
  */
+__rte_experimental
 int
 rte_tm_shaper_profile_delete(uint16_t port_id,
 	uint32_t shaper_profile_id,
@@ -1311,6 +1323,7 @@ rte_tm_shaper_profile_delete(uint16_t port_id,
  *
  * @see struct rte_tm_capabilities::shaper_shared_n_max
  */
+__rte_experimental
 int
 rte_tm_shared_shaper_add_update(uint16_t port_id,
 	uint32_t shared_shaper_id,
@@ -1334,6 +1347,7 @@ rte_tm_shared_shaper_add_update(uint16_t port_id,
  *
  * @see struct rte_tm_capabilities::shaper_shared_n_max
  */
+__rte_experimental
 int
 rte_tm_shared_shaper_delete(uint16_t port_id,
 	uint32_t shared_shaper_id,
@@ -1402,6 +1416,7 @@ rte_tm_shared_shaper_delete(uint16_t port_id,
  * @see RTE_TM_NODE_LEVEL_ID_ANY
  * @see struct rte_tm_capabilities
  */
+__rte_experimental
 int
 rte_tm_node_add(uint16_t port_id,
 	uint32_t node_id,
@@ -1435,6 +1450,7 @@ rte_tm_node_add(uint16_t port_id,
  *
  * @see RTE_TM_UPDATE_NODE_ADD_DELETE
  */
+__rte_experimental
 int
 rte_tm_node_delete(uint16_t port_id,
 	uint32_t node_id,
@@ -1459,6 +1475,7 @@ rte_tm_node_delete(uint16_t port_id,
  * @see rte_tm_node_resume()
  * @see RTE_TM_UPDATE_NODE_SUSPEND_RESUME
  */
+__rte_experimental
 int
 rte_tm_node_suspend(uint16_t port_id,
 	uint32_t node_id,
@@ -1482,6 +1499,7 @@ rte_tm_node_suspend(uint16_t port_id,
  * @see rte_tm_node_suspend()
  * @see RTE_TM_UPDATE_NODE_SUSPEND_RESUME
  */
+__rte_experimental
 int
 rte_tm_node_resume(uint16_t port_id,
 	uint32_t node_id,
@@ -1523,6 +1541,7 @@ rte_tm_node_resume(uint16_t port_id,
  * @see rte_tm_node_add()
  * @see rte_tm_node_delete()
  */
+__rte_experimental
 int
 rte_tm_hierarchy_commit(uint16_t port_id,
 	int clear_on_fail,
@@ -1563,6 +1582,7 @@ rte_tm_hierarchy_commit(uint16_t port_id,
  * @see RTE_TM_UPDATE_NODE_PARENT_KEEP_LEVEL
  * @see RTE_TM_UPDATE_NODE_PARENT_CHANGE_LEVEL
  */
+__rte_experimental
 int
 rte_tm_node_parent_update(uint16_t port_id,
 	uint32_t node_id,
@@ -1592,6 +1612,7 @@ rte_tm_node_parent_update(uint16_t port_id,
  *
  * @see struct rte_tm_capabilities::shaper_private_n_max
  */
+__rte_experimental
 int
 rte_tm_node_shaper_update(uint16_t port_id,
 	uint32_t node_id,
@@ -1619,6 +1640,7 @@ rte_tm_node_shaper_update(uint16_t port_id,
  *
  * @see struct rte_tm_capabilities::shaper_shared_n_max
  */
+__rte_experimental
 int
 rte_tm_node_shared_shaper_update(uint16_t port_id,
 	uint32_t node_id,
@@ -1646,6 +1668,7 @@ rte_tm_node_shared_shaper_update(uint16_t port_id,
  * @see enum rte_tm_stats_type
  * @see RTE_TM_UPDATE_NODE_STATS
  */
+__rte_experimental
 int
 rte_tm_node_stats_update(uint16_t port_id,
 	uint32_t node_id,
@@ -1674,6 +1697,7 @@ rte_tm_node_stats_update(uint16_t port_id,
  * @see RTE_TM_UPDATE_NODE_WFQ_WEIGHT_MODE
  * @see RTE_TM_UPDATE_NODE_N_SP_PRIORITIES
  */
+__rte_experimental
 int
 rte_tm_node_wfq_weight_mode_update(uint16_t port_id,
 	uint32_t node_id,
@@ -1697,6 +1721,7 @@ rte_tm_node_wfq_weight_mode_update(uint16_t port_id,
  *
  * @see RTE_TM_UPDATE_NODE_CMAN
  */
+__rte_experimental
 int
 rte_tm_node_cman_update(uint16_t port_id,
 	uint32_t node_id,
@@ -1721,6 +1746,7 @@ rte_tm_node_cman_update(uint16_t port_id,
   *
  * @see struct rte_tm_capabilities::cman_wred_context_private_n_max
 */
+__rte_experimental
 int
 rte_tm_node_wred_context_update(uint16_t port_id,
 	uint32_t node_id,
@@ -1746,6 +1772,7 @@ rte_tm_node_wred_context_update(uint16_t port_id,
  *
  * @see struct rte_tm_capabilities::cman_wred_context_shared_n_max
  */
+__rte_experimental
 int
 rte_tm_node_shared_wred_context_update(uint16_t port_id,
 	uint32_t node_id,
@@ -1778,6 +1805,7 @@ rte_tm_node_shared_wred_context_update(uint16_t port_id,
  *
  * @see enum rte_tm_stats_type
  */
+__rte_experimental
 int
 rte_tm_node_stats_read(uint16_t port_id,
 	uint32_t node_id,
@@ -1815,6 +1843,7 @@ rte_tm_node_stats_read(uint16_t port_id,
  *
  * @see struct rte_tm_capabilities::mark_vlan_dei_supported
  */
+__rte_experimental
 int
 rte_tm_mark_vlan_dei(uint16_t port_id,
 	int mark_green,
@@ -1865,6 +1894,7 @@ rte_tm_mark_vlan_dei(uint16_t port_id,
  * @see struct rte_tm_capabilities::mark_ip_ecn_tcp_supported
  * @see struct rte_tm_capabilities::mark_ip_ecn_sctp_supported
  */
+__rte_experimental
 int
 rte_tm_mark_ip_ecn(uint16_t port_id,
 	int mark_green,
@@ -1913,6 +1943,7 @@ rte_tm_mark_ip_ecn(uint16_t port_id,
  *
  * @see struct rte_tm_capabilities::mark_ip_dscp_supported
  */
+__rte_experimental
 int
 rte_tm_mark_ip_dscp(uint16_t port_id,
 	int mark_green,
-- 
2.8.4


^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [dpdk-dev] [PATCH v2] ethdev: mark all traffic manager API as experimental
  2020-09-10  8:05   ` [dpdk-dev] [PATCH v2] " Nithin Dabilpuram
@ 2020-09-10  8:30     ` Kinsella, Ray
  2020-09-10 10:56       ` [dpdk-dev] [EXT] " Nithin Dabilpuram
  2020-09-10  8:36     ` [dpdk-dev] " Ferruh Yigit
  1 sibling, 1 reply; 23+ messages in thread
From: Kinsella, Ray @ 2020-09-10  8:30 UTC (permalink / raw)
  To: Nithin Dabilpuram, ferruh.yigit, bruce.richardson,
	cristian.dumitrescu, thomas, bluca, jasvinder.singh, arybchenko,
	ray.kinsella, nhorman, ktraynor, david.marchand
  Cc: dev, jerinj

On 10/09/2020 09:05, Nithin Dabilpuram wrote:
> This patch marks all traffic manager API as experimental as
> per discussion mentioned in below thread.
> 
> https://mails.dpdk.org/archives/dev/2020-April/165364.html
> 
> Signed-off-by: Nithin Dabilpuram <ndabilpuram@marvell.com>
> ---
> 
> v2:
> - Updated commit message.
> 
>  lib/librte_ethdev/rte_ethdev_version.map | 62 ++++++++++++++++----------------
>  lib/librte_ethdev/rte_tm.h               | 33 ++++++++++++++++-
>  2 files changed, 64 insertions(+), 31 deletions(-)
> 
> diff --git a/lib/librte_ethdev/rte_ethdev_version.map b/lib/librte_ethdev/rte_ethdev_version.map
> index 1212a17..3da4512 100644
> --- a/lib/librte_ethdev/rte_ethdev_version.map
> +++ b/lib/librte_ethdev/rte_ethdev_version.map
> @@ -135,36 +135,6 @@ DPDK_20.0 {
>  	rte_flow_isolate;
>  	rte_flow_query;
>  	rte_flow_validate;
> -	rte_tm_capabilities_get;
> -	rte_tm_get_number_of_leaf_nodes;
> -	rte_tm_hierarchy_commit;
> -	rte_tm_level_capabilities_get;
> -	rte_tm_mark_ip_dscp;
> -	rte_tm_mark_ip_ecn;
> -	rte_tm_mark_vlan_dei;
> -	rte_tm_node_add;
> -	rte_tm_node_capabilities_get;
> -	rte_tm_node_cman_update;
> -	rte_tm_node_delete;
> -	rte_tm_node_parent_update;
> -	rte_tm_node_resume;
> -	rte_tm_node_shaper_update;
> -	rte_tm_node_shared_shaper_update;
> -	rte_tm_node_shared_wred_context_update;
> -	rte_tm_node_stats_read;
> -	rte_tm_node_stats_update;
> -	rte_tm_node_suspend;
> -	rte_tm_node_type_get;
> -	rte_tm_node_wfq_weight_mode_update;
> -	rte_tm_node_wred_context_update;
> -	rte_tm_shaper_profile_add;
> -	rte_tm_shaper_profile_delete;
> -	rte_tm_shared_shaper_add_update;
> -	rte_tm_shared_shaper_delete;
> -	rte_tm_shared_wred_context_add_update;
> -	rte_tm_shared_wred_context_delete;
> -	rte_tm_wred_profile_add;
> -	rte_tm_wred_profile_delete;
>  
>  	local: *;
>  };
> @@ -241,6 +211,38 @@ EXPERIMENTAL {
>  	__rte_ethdev_trace_rx_burst;
>  	__rte_ethdev_trace_tx_burst;
>  	rte_flow_get_aged_flows;
> +
> +	# Marked as experimental in 20.11
> +	rte_tm_capabilities_get;
> +	rte_tm_get_number_of_leaf_nodes;
> +	rte_tm_hierarchy_commit;
> +	rte_tm_level_capabilities_get;
> +	rte_tm_mark_ip_dscp;
> +	rte_tm_mark_ip_ecn;
> +	rte_tm_mark_vlan_dei;
> +	rte_tm_node_add;
> +	rte_tm_node_capabilities_get;
> +	rte_tm_node_cman_update;
> +	rte_tm_node_delete;
> +	rte_tm_node_parent_update;
> +	rte_tm_node_resume;
> +	rte_tm_node_shaper_update;
> +	rte_tm_node_shared_shaper_update;
> +	rte_tm_node_shared_wred_context_update;
> +	rte_tm_node_stats_read;
> +	rte_tm_node_stats_update;
> +	rte_tm_node_suspend;
> +	rte_tm_node_type_get;
> +	rte_tm_node_wfq_weight_mode_update;
> +	rte_tm_node_wred_context_update;
> +	rte_tm_shaper_profile_add;
> +	rte_tm_shaper_profile_delete;
> +	rte_tm_shared_shaper_add_update;
> +	rte_tm_shared_shaper_delete;
> +	rte_tm_shared_wred_context_add_update;
> +	rte_tm_shared_wred_context_delete;
> +	rte_tm_wred_profile_add;
> +	rte_tm_wred_profile_delete;
>  };
[SNIP]

So I will re-interate what I said in April, all of these API have existed since DPDK 17.08.
I find it hard to believe they are all at imminent risk of changing to degree they _all_ warrant EXPERIMENTAL status.

Ray K

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [dpdk-dev] [PATCH v2] ethdev: mark all traffic manager API as experimental
  2020-09-10  8:05   ` [dpdk-dev] [PATCH v2] " Nithin Dabilpuram
  2020-09-10  8:30     ` Kinsella, Ray
@ 2020-09-10  8:36     ` Ferruh Yigit
  2020-09-10  8:37       ` Dumitrescu, Cristian
  2020-09-10  9:51       ` [dpdk-dev] [EXT] " Nithin Dabilpuram
  1 sibling, 2 replies; 23+ messages in thread
From: Ferruh Yigit @ 2020-09-10  8:36 UTC (permalink / raw)
  To: Nithin Dabilpuram, bruce.richardson, cristian.dumitrescu, thomas,
	bluca, jasvinder.singh, arybchenko, ray.kinsella, nhorman,
	ktraynor, david.marchand, Ray Kinsella
  Cc: dev, jerinj

On 9/10/2020 9:05 AM, Nithin Dabilpuram wrote:
> This patch marks all traffic manager API as experimental as
> per discussion mentioned in below thread.
> 
> https://mails.dpdk.org/archives/dev/2020-April/165364.html
> 
> Signed-off-by: Nithin Dabilpuram <ndabilpuram@marvell.com>
> ---
> 
> v2:
> - Updated commit message.


Hi Nithin Kumar,

Perhaps there was a misunderstanding, the paragraph in the deprecation note
documents about making tm APIs experimental needs to be removed, since it won't
be valid anymore after this patch.
And best place to remove that note is this patch.

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [dpdk-dev] [PATCH v2] ethdev: mark all traffic manager API as experimental
  2020-09-10  8:36     ` [dpdk-dev] " Ferruh Yigit
@ 2020-09-10  8:37       ` Dumitrescu, Cristian
  2020-09-10  9:54         ` [dpdk-dev] [EXT] " Nithin Dabilpuram
  2020-09-10  9:51       ` [dpdk-dev] [EXT] " Nithin Dabilpuram
  1 sibling, 1 reply; 23+ messages in thread
From: Dumitrescu, Cristian @ 2020-09-10  8:37 UTC (permalink / raw)
  To: Yigit, Ferruh, Nithin Dabilpuram, Richardson, Bruce, thomas,
	bluca, Singh, Jasvinder, arybchenko, Kinsella, Ray, nhorman,
	ktraynor, david.marchand, Ray Kinsella
  Cc: dev, jerinj



> -----Original Message-----
> From: Ferruh Yigit <ferruh.yigit@intel.com>
> Sent: Thursday, September 10, 2020 9:36 AM
> To: Nithin Dabilpuram <ndabilpuram@marvell.com>; Richardson, Bruce
> <bruce.richardson@intel.com>; Dumitrescu, Cristian
> <cristian.dumitrescu@intel.com>; thomas@monjalon.net;
> bluca@debian.org; Singh, Jasvinder <jasvinder.singh@intel.com>;
> arybchenko@solarflare.com; Kinsella, Ray <ray.kinsella@intel.com>;
> nhorman@tuxdriver.com; ktraynor@redhat.com;
> david.marchand@redhat.com; Ray Kinsella <mdr@ashroe.eu>
> Cc: dev@dpdk.org; jerinj@marvell.com
> Subject: Re: [PATCH v2] ethdev: mark all traffic manager API as experimental
> 
> On 9/10/2020 9:05 AM, Nithin Dabilpuram wrote:
> > This patch marks all traffic manager API as experimental as
> > per discussion mentioned in below thread.
> >
> > https://mails.dpdk.org/archives/dev/2020-April/165364.html
> >
> > Signed-off-by: Nithin Dabilpuram <ndabilpuram@marvell.com>
> > ---
> >
> > v2:
> > - Updated commit message.
> 
> 
> Hi Nithin Kumar,
> 
> Perhaps there was a misunderstanding, the paragraph in the deprecation
> note
> documents about making tm APIs experimental needs to be removed, since
> it won't
> be valid anymore after this patch.
> And best place to remove that note is this patch.

And also please include my ack from V1.

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [dpdk-dev] [EXT] Re: [PATCH v2] ethdev: mark all traffic manager API as experimental
  2020-09-10  8:36     ` [dpdk-dev] " Ferruh Yigit
  2020-09-10  8:37       ` Dumitrescu, Cristian
@ 2020-09-10  9:51       ` Nithin Dabilpuram
  1 sibling, 0 replies; 23+ messages in thread
From: Nithin Dabilpuram @ 2020-09-10  9:51 UTC (permalink / raw)
  To: Ferruh Yigit
  Cc: bruce.richardson, cristian.dumitrescu, thomas, bluca,
	jasvinder.singh, arybchenko, ray.kinsella, nhorman, ktraynor,
	david.marchand, Ray Kinsella, dev, jerinj

On Thu, Sep 10, 2020 at 09:36:14AM +0100, Ferruh Yigit wrote:
> External Email
> 
> ----------------------------------------------------------------------
> On 9/10/2020 9:05 AM, Nithin Dabilpuram wrote:
> > This patch marks all traffic manager API as experimental as
> > per discussion mentioned in below thread.
> > 
> > https://urldefense.proofpoint.com/v2/url?u=https-3A__mails.dpdk.org_archives_dev_2020-2DApril_165364.html&d=DwIDaQ&c=nKjWec2b6R0mOyPaz7xtfQ&r=FZ_tPCbgFOh18zwRPO9H0yDx8VW38vuapifdDfc8SFQ&m=wqVBW8b3o-0Gamt8jyb4qjfv2NC91yJu72NYGkTiV_Q&s=-2I-O0kTUtPiOhpNsG_7Z06p9jn_h55ZQuO-KW6h-R4&e= 
> > 
> > Signed-off-by: Nithin Dabilpuram <ndabilpuram@marvell.com>
> > ---
> > 
> > v2:
> > - Updated commit message.
> 
> 
> Hi Nithin Kumar,
> 
> Perhaps there was a misunderstanding, the paragraph in the deprecation note
> documents about making tm APIs experimental needs to be removed, since it won't
> be valid anymore after this patch.
> And best place to remove that note is this patch.

Apologies for misunderstanding your statement. Will send a V3 with the same.

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [dpdk-dev] [EXT] RE: [PATCH v2] ethdev: mark all traffic manager API as experimental
  2020-09-10  8:37       ` Dumitrescu, Cristian
@ 2020-09-10  9:54         ` Nithin Dabilpuram
  0 siblings, 0 replies; 23+ messages in thread
From: Nithin Dabilpuram @ 2020-09-10  9:54 UTC (permalink / raw)
  To: Dumitrescu, Cristian
  Cc: Yigit, Ferruh, Richardson, Bruce, thomas, bluca, Singh,
	Jasvinder, arybchenko, Kinsella, Ray, nhorman, ktraynor,
	david.marchand, Ray Kinsella, dev, jerinj

On Thu, Sep 10, 2020 at 08:37:36AM +0000, Dumitrescu, Cristian wrote:
> External Email
> 
> ----------------------------------------------------------------------
> 
> 
> > -----Original Message-----
> > From: Ferruh Yigit <ferruh.yigit@intel.com>
> > Sent: Thursday, September 10, 2020 9:36 AM
> > To: Nithin Dabilpuram <ndabilpuram@marvell.com>; Richardson, Bruce
> > <bruce.richardson@intel.com>; Dumitrescu, Cristian
> > <cristian.dumitrescu@intel.com>; thomas@monjalon.net;
> > bluca@debian.org; Singh, Jasvinder <jasvinder.singh@intel.com>;
> > arybchenko@solarflare.com; Kinsella, Ray <ray.kinsella@intel.com>;
> > nhorman@tuxdriver.com; ktraynor@redhat.com;
> > david.marchand@redhat.com; Ray Kinsella <mdr@ashroe.eu>
> > Cc: dev@dpdk.org; jerinj@marvell.com
> > Subject: Re: [PATCH v2] ethdev: mark all traffic manager API as experimental
> > 
> > On 9/10/2020 9:05 AM, Nithin Dabilpuram wrote:
> > > This patch marks all traffic manager API as experimental as
> > > per discussion mentioned in below thread.
> > >
> > > https://urldefense.proofpoint.com/v2/url?u=https-3A__mails.dpdk.org_archives_dev_2020-2DApril_165364.html&d=DwIGaQ&c=nKjWec2b6R0mOyPaz7xtfQ&r=FZ_tPCbgFOh18zwRPO9H0yDx8VW38vuapifdDfc8SFQ&m=1aU10CHItu21NpV_gU3dlmy4PBwlNcfkHEqviKGFU3U&s=U0XtjGvqaDr1fYaF06g9__xeFexlEHybu8kgMopYrG8&e= 
> > >
> > > Signed-off-by: Nithin Dabilpuram <ndabilpuram@marvell.com>
> > > ---
> > >
> > > v2:
> > > - Updated commit message.
> > 
> > 
> > Hi Nithin Kumar,
> > 
> > Perhaps there was a misunderstanding, the paragraph in the deprecation
> > note
> > documents about making tm APIs experimental needs to be removed, since
> > it won't
> > be valid anymore after this patch.
> > And best place to remove that note is this patch.
> 
> And also please include my ack from V1.
Ack, sorry for missing that.

^ permalink raw reply	[flat|nested] 23+ messages in thread

* [dpdk-dev] [PATCH v3] ethdev: mark all traffic manager API as experimental
  2020-09-09 17:22 ` [dpdk-dev] [PATCH] ethdev: mark all traffic manager API " Nithin Dabilpuram
                     ` (2 preceding siblings ...)
  2020-09-10  8:05   ` [dpdk-dev] [PATCH v2] " Nithin Dabilpuram
@ 2020-09-10 10:09   ` Nithin Dabilpuram
  2020-09-10 11:34     ` Ferruh Yigit
  3 siblings, 1 reply; 23+ messages in thread
From: Nithin Dabilpuram @ 2020-09-10 10:09 UTC (permalink / raw)
  To: ferruh.yigit, bruce.richardson, cristian.dumitrescu, thomas,
	bluca, jasvinder.singh, arybchenko, ray.kinsella, nhorman,
	ktraynor, david.marchand, Ray Kinsella, John McNamara,
	Marko Kovacevic
  Cc: dev, jerinj, Nithin Dabilpuram

This patch marks all traffic manager API as experimental as
per deprecation notice[1] and discussion[2] mentioned in following
threads.

[1] https://mails.dpdk.org/archives/dev/2020-May/166221.html
[2] https://mails.dpdk.org/archives/dev/2020-April/165364.html

Signed-off-by: Nithin Dabilpuram <ndabilpuram@marvell.com>
Acked-by: Cristian Dumitrescu <cristian.dumitrescu@intel.com>
---
 doc/guides/rel_notes/deprecation.rst     |  7 ----
 lib/librte_ethdev/rte_ethdev_version.map | 62 ++++++++++++++++----------------
 lib/librte_ethdev/rte_tm.h               | 33 ++++++++++++++++-
 3 files changed, 64 insertions(+), 38 deletions(-)

diff --git a/doc/guides/rel_notes/deprecation.rst b/doc/guides/rel_notes/deprecation.rst
index dae4dbf..cd6b2c8 100644
--- a/doc/guides/rel_notes/deprecation.rst
+++ b/doc/guides/rel_notes/deprecation.rst
@@ -237,13 +237,6 @@ Deprecation Notices
   following the IPv6 header, as proposed in RFC
   https://mails.dpdk.org/archives/dev/2020-August/177257.html.
 
-* traffic manager: All traffic manager API's in ``rte_tm.h`` were mistakenly made
-  ABI stable in the v19.11 release. The TM maintainer and other contributors have
-  agreed to keep the TM APIs as experimental in expectation of additional spec
-  improvements. Therefore, all APIs in ``rte_tm.h`` will be marked back as
-  experimental in v20.11 DPDK release. For more details, please see `the thread
-  <https://mails.dpdk.org/archives/dev/2020-April/164970.html>`_.
-
 * pmd_dpaa: The API ``rte_pmd_dpaa_set_tx_loopback`` will have extended
   ``port_id`` definition from ``uint8_t`` to ``uint16_t``.
 
diff --git a/lib/librte_ethdev/rte_ethdev_version.map b/lib/librte_ethdev/rte_ethdev_version.map
index 1212a17..3da4512 100644
--- a/lib/librte_ethdev/rte_ethdev_version.map
+++ b/lib/librte_ethdev/rte_ethdev_version.map
@@ -135,36 +135,6 @@ DPDK_20.0 {
 	rte_flow_isolate;
 	rte_flow_query;
 	rte_flow_validate;
-	rte_tm_capabilities_get;
-	rte_tm_get_number_of_leaf_nodes;
-	rte_tm_hierarchy_commit;
-	rte_tm_level_capabilities_get;
-	rte_tm_mark_ip_dscp;
-	rte_tm_mark_ip_ecn;
-	rte_tm_mark_vlan_dei;
-	rte_tm_node_add;
-	rte_tm_node_capabilities_get;
-	rte_tm_node_cman_update;
-	rte_tm_node_delete;
-	rte_tm_node_parent_update;
-	rte_tm_node_resume;
-	rte_tm_node_shaper_update;
-	rte_tm_node_shared_shaper_update;
-	rte_tm_node_shared_wred_context_update;
-	rte_tm_node_stats_read;
-	rte_tm_node_stats_update;
-	rte_tm_node_suspend;
-	rte_tm_node_type_get;
-	rte_tm_node_wfq_weight_mode_update;
-	rte_tm_node_wred_context_update;
-	rte_tm_shaper_profile_add;
-	rte_tm_shaper_profile_delete;
-	rte_tm_shared_shaper_add_update;
-	rte_tm_shared_shaper_delete;
-	rte_tm_shared_wred_context_add_update;
-	rte_tm_shared_wred_context_delete;
-	rte_tm_wred_profile_add;
-	rte_tm_wred_profile_delete;
 
 	local: *;
 };
@@ -241,6 +211,38 @@ EXPERIMENTAL {
 	__rte_ethdev_trace_rx_burst;
 	__rte_ethdev_trace_tx_burst;
 	rte_flow_get_aged_flows;
+
+	# Marked as experimental in 20.11
+	rte_tm_capabilities_get;
+	rte_tm_get_number_of_leaf_nodes;
+	rte_tm_hierarchy_commit;
+	rte_tm_level_capabilities_get;
+	rte_tm_mark_ip_dscp;
+	rte_tm_mark_ip_ecn;
+	rte_tm_mark_vlan_dei;
+	rte_tm_node_add;
+	rte_tm_node_capabilities_get;
+	rte_tm_node_cman_update;
+	rte_tm_node_delete;
+	rte_tm_node_parent_update;
+	rte_tm_node_resume;
+	rte_tm_node_shaper_update;
+	rte_tm_node_shared_shaper_update;
+	rte_tm_node_shared_wred_context_update;
+	rte_tm_node_stats_read;
+	rte_tm_node_stats_update;
+	rte_tm_node_suspend;
+	rte_tm_node_type_get;
+	rte_tm_node_wfq_weight_mode_update;
+	rte_tm_node_wred_context_update;
+	rte_tm_shaper_profile_add;
+	rte_tm_shaper_profile_delete;
+	rte_tm_shared_shaper_add_update;
+	rte_tm_shared_shaper_delete;
+	rte_tm_shared_wred_context_add_update;
+	rte_tm_shared_wred_context_delete;
+	rte_tm_wred_profile_add;
+	rte_tm_wred_profile_delete;
 };
 
 INTERNAL {
diff --git a/lib/librte_ethdev/rte_tm.h b/lib/librte_ethdev/rte_tm.h
index f9c0cf3..c80c0bc 100644
--- a/lib/librte_ethdev/rte_tm.h
+++ b/lib/librte_ethdev/rte_tm.h
@@ -16,7 +16,8 @@
  * traffic shaping, congestion management, packet marking, etc.
  *
  * @warning
- * @b EXPERIMENTAL: this API may change without prior notice
+ * @b EXPERIMENTAL:
+ * All functions in this file may be changed or removed without prior notice.
  */
 
 #include <stdint.h>
@@ -1050,6 +1051,7 @@ struct rte_tm_error {
  * @return
  *   0 on success, non-zero error code otherwise.
  */
+__rte_experimental
 int
 rte_tm_get_number_of_leaf_nodes(uint16_t port_id,
 	uint32_t *n_leaf_nodes,
@@ -1074,6 +1076,7 @@ rte_tm_get_number_of_leaf_nodes(uint16_t port_id,
  * @return
  *   0 on success, non-zero error code otherwise.
  */
+__rte_experimental
 int
 rte_tm_node_type_get(uint16_t port_id,
 	uint32_t node_id,
@@ -1092,6 +1095,7 @@ rte_tm_node_type_get(uint16_t port_id,
  * @return
  *   0 on success, non-zero error code otherwise.
  */
+__rte_experimental
 int
 rte_tm_capabilities_get(uint16_t port_id,
 	struct rte_tm_capabilities *cap,
@@ -1112,6 +1116,7 @@ rte_tm_capabilities_get(uint16_t port_id,
  * @return
  *   0 on success, non-zero error code otherwise.
  */
+__rte_experimental
 int
 rte_tm_level_capabilities_get(uint16_t port_id,
 	uint32_t level_id,
@@ -1132,6 +1137,7 @@ rte_tm_level_capabilities_get(uint16_t port_id,
  * @return
  *   0 on success, non-zero error code otherwise.
  */
+__rte_experimental
 int
 rte_tm_node_capabilities_get(uint16_t port_id,
 	uint32_t node_id,
@@ -1157,6 +1163,7 @@ rte_tm_node_capabilities_get(uint16_t port_id,
  *
  * @see struct rte_tm_capabilities::cman_wred_context_n_max
  */
+__rte_experimental
 int
 rte_tm_wred_profile_add(uint16_t port_id,
 	uint32_t wred_profile_id,
@@ -1180,6 +1187,7 @@ rte_tm_wred_profile_add(uint16_t port_id,
  *
  * @see struct rte_tm_capabilities::cman_wred_context_n_max
  */
+__rte_experimental
 int
 rte_tm_wred_profile_delete(uint16_t port_id,
 	uint32_t wred_profile_id,
@@ -1211,6 +1219,7 @@ rte_tm_wred_profile_delete(uint16_t port_id,
  *
  * @see struct rte_tm_capabilities::cman_wred_context_shared_n_max
  */
+__rte_experimental
 int
 rte_tm_shared_wred_context_add_update(uint16_t port_id,
 	uint32_t shared_wred_context_id,
@@ -1235,6 +1244,7 @@ rte_tm_shared_wred_context_add_update(uint16_t port_id,
  *
  * @see struct rte_tm_capabilities::cman_wred_context_shared_n_max
  */
+__rte_experimental
 int
 rte_tm_shared_wred_context_delete(uint16_t port_id,
 	uint32_t shared_wred_context_id,
@@ -1259,6 +1269,7 @@ rte_tm_shared_wred_context_delete(uint16_t port_id,
  *
  * @see struct rte_tm_capabilities::shaper_n_max
  */
+__rte_experimental
 int
 rte_tm_shaper_profile_add(uint16_t port_id,
 	uint32_t shaper_profile_id,
@@ -1282,6 +1293,7 @@ rte_tm_shaper_profile_add(uint16_t port_id,
  *
  * @see struct rte_tm_capabilities::shaper_n_max
  */
+__rte_experimental
 int
 rte_tm_shaper_profile_delete(uint16_t port_id,
 	uint32_t shaper_profile_id,
@@ -1311,6 +1323,7 @@ rte_tm_shaper_profile_delete(uint16_t port_id,
  *
  * @see struct rte_tm_capabilities::shaper_shared_n_max
  */
+__rte_experimental
 int
 rte_tm_shared_shaper_add_update(uint16_t port_id,
 	uint32_t shared_shaper_id,
@@ -1334,6 +1347,7 @@ rte_tm_shared_shaper_add_update(uint16_t port_id,
  *
  * @see struct rte_tm_capabilities::shaper_shared_n_max
  */
+__rte_experimental
 int
 rte_tm_shared_shaper_delete(uint16_t port_id,
 	uint32_t shared_shaper_id,
@@ -1402,6 +1416,7 @@ rte_tm_shared_shaper_delete(uint16_t port_id,
  * @see RTE_TM_NODE_LEVEL_ID_ANY
  * @see struct rte_tm_capabilities
  */
+__rte_experimental
 int
 rte_tm_node_add(uint16_t port_id,
 	uint32_t node_id,
@@ -1435,6 +1450,7 @@ rte_tm_node_add(uint16_t port_id,
  *
  * @see RTE_TM_UPDATE_NODE_ADD_DELETE
  */
+__rte_experimental
 int
 rte_tm_node_delete(uint16_t port_id,
 	uint32_t node_id,
@@ -1459,6 +1475,7 @@ rte_tm_node_delete(uint16_t port_id,
  * @see rte_tm_node_resume()
  * @see RTE_TM_UPDATE_NODE_SUSPEND_RESUME
  */
+__rte_experimental
 int
 rte_tm_node_suspend(uint16_t port_id,
 	uint32_t node_id,
@@ -1482,6 +1499,7 @@ rte_tm_node_suspend(uint16_t port_id,
  * @see rte_tm_node_suspend()
  * @see RTE_TM_UPDATE_NODE_SUSPEND_RESUME
  */
+__rte_experimental
 int
 rte_tm_node_resume(uint16_t port_id,
 	uint32_t node_id,
@@ -1523,6 +1541,7 @@ rte_tm_node_resume(uint16_t port_id,
  * @see rte_tm_node_add()
  * @see rte_tm_node_delete()
  */
+__rte_experimental
 int
 rte_tm_hierarchy_commit(uint16_t port_id,
 	int clear_on_fail,
@@ -1563,6 +1582,7 @@ rte_tm_hierarchy_commit(uint16_t port_id,
  * @see RTE_TM_UPDATE_NODE_PARENT_KEEP_LEVEL
  * @see RTE_TM_UPDATE_NODE_PARENT_CHANGE_LEVEL
  */
+__rte_experimental
 int
 rte_tm_node_parent_update(uint16_t port_id,
 	uint32_t node_id,
@@ -1592,6 +1612,7 @@ rte_tm_node_parent_update(uint16_t port_id,
  *
  * @see struct rte_tm_capabilities::shaper_private_n_max
  */
+__rte_experimental
 int
 rte_tm_node_shaper_update(uint16_t port_id,
 	uint32_t node_id,
@@ -1619,6 +1640,7 @@ rte_tm_node_shaper_update(uint16_t port_id,
  *
  * @see struct rte_tm_capabilities::shaper_shared_n_max
  */
+__rte_experimental
 int
 rte_tm_node_shared_shaper_update(uint16_t port_id,
 	uint32_t node_id,
@@ -1646,6 +1668,7 @@ rte_tm_node_shared_shaper_update(uint16_t port_id,
  * @see enum rte_tm_stats_type
  * @see RTE_TM_UPDATE_NODE_STATS
  */
+__rte_experimental
 int
 rte_tm_node_stats_update(uint16_t port_id,
 	uint32_t node_id,
@@ -1674,6 +1697,7 @@ rte_tm_node_stats_update(uint16_t port_id,
  * @see RTE_TM_UPDATE_NODE_WFQ_WEIGHT_MODE
  * @see RTE_TM_UPDATE_NODE_N_SP_PRIORITIES
  */
+__rte_experimental
 int
 rte_tm_node_wfq_weight_mode_update(uint16_t port_id,
 	uint32_t node_id,
@@ -1697,6 +1721,7 @@ rte_tm_node_wfq_weight_mode_update(uint16_t port_id,
  *
  * @see RTE_TM_UPDATE_NODE_CMAN
  */
+__rte_experimental
 int
 rte_tm_node_cman_update(uint16_t port_id,
 	uint32_t node_id,
@@ -1721,6 +1746,7 @@ rte_tm_node_cman_update(uint16_t port_id,
   *
  * @see struct rte_tm_capabilities::cman_wred_context_private_n_max
 */
+__rte_experimental
 int
 rte_tm_node_wred_context_update(uint16_t port_id,
 	uint32_t node_id,
@@ -1746,6 +1772,7 @@ rte_tm_node_wred_context_update(uint16_t port_id,
  *
  * @see struct rte_tm_capabilities::cman_wred_context_shared_n_max
  */
+__rte_experimental
 int
 rte_tm_node_shared_wred_context_update(uint16_t port_id,
 	uint32_t node_id,
@@ -1778,6 +1805,7 @@ rte_tm_node_shared_wred_context_update(uint16_t port_id,
  *
  * @see enum rte_tm_stats_type
  */
+__rte_experimental
 int
 rte_tm_node_stats_read(uint16_t port_id,
 	uint32_t node_id,
@@ -1815,6 +1843,7 @@ rte_tm_node_stats_read(uint16_t port_id,
  *
  * @see struct rte_tm_capabilities::mark_vlan_dei_supported
  */
+__rte_experimental
 int
 rte_tm_mark_vlan_dei(uint16_t port_id,
 	int mark_green,
@@ -1865,6 +1894,7 @@ rte_tm_mark_vlan_dei(uint16_t port_id,
  * @see struct rte_tm_capabilities::mark_ip_ecn_tcp_supported
  * @see struct rte_tm_capabilities::mark_ip_ecn_sctp_supported
  */
+__rte_experimental
 int
 rte_tm_mark_ip_ecn(uint16_t port_id,
 	int mark_green,
@@ -1913,6 +1943,7 @@ rte_tm_mark_ip_ecn(uint16_t port_id,
  *
  * @see struct rte_tm_capabilities::mark_ip_dscp_supported
  */
+__rte_experimental
 int
 rte_tm_mark_ip_dscp(uint16_t port_id,
 	int mark_green,
-- 
2.8.4


^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [dpdk-dev] [EXT] Re: [PATCH v2] ethdev: mark all traffic manager API as experimental
  2020-09-10  8:30     ` Kinsella, Ray
@ 2020-09-10 10:56       ` Nithin Dabilpuram
  2020-09-10 11:01         ` Kinsella, Ray
  0 siblings, 1 reply; 23+ messages in thread
From: Nithin Dabilpuram @ 2020-09-10 10:56 UTC (permalink / raw)
  To: Kinsella, Ray
  Cc: ferruh.yigit, bruce.richardson, cristian.dumitrescu, thomas,
	bluca, jasvinder.singh, arybchenko, ray.kinsella, nhorman,
	ktraynor, david.marchand, dev, jerinj

On Thu, Sep 10, 2020 at 09:30:15AM +0100, Kinsella, Ray wrote:
> External Email
> 
> ----------------------------------------------------------------------
> On 10/09/2020 09:05, Nithin Dabilpuram wrote:
> > This patch marks all traffic manager API as experimental as
> > per discussion mentioned in below thread.
> > 
> > https://urldefense.proofpoint.com/v2/url?u=https-3A__mails.dpdk.org_archives_dev_2020-2DApril_165364.html&d=DwIDaQ&c=nKjWec2b6R0mOyPaz7xtfQ&r=FZ_tPCbgFOh18zwRPO9H0yDx8VW38vuapifdDfc8SFQ&m=NlIUXSsugCPTKBv9qxsaMHOhTuC90TUqLcGg962VVyA&s=DZL_m0a73uef5Qgal1iFqc9dTdAuUd8J6eC0mZOQlFs&e= 
> > 
> > Signed-off-by: Nithin Dabilpuram <ndabilpuram@marvell.com>
> > ---
> > 
> > v2:
> > - Updated commit message.
> > 
> >  lib/librte_ethdev/rte_ethdev_version.map | 62 ++++++++++++++++----------------
> >  lib/librte_ethdev/rte_tm.h               | 33 ++++++++++++++++-
> >  2 files changed, 64 insertions(+), 31 deletions(-)
> > 
> > diff --git a/lib/librte_ethdev/rte_ethdev_version.map b/lib/librte_ethdev/rte_ethdev_version.map
> > index 1212a17..3da4512 100644
> > --- a/lib/librte_ethdev/rte_ethdev_version.map
> > +++ b/lib/librte_ethdev/rte_ethdev_version.map
> > @@ -135,36 +135,6 @@ DPDK_20.0 {
> >  	rte_flow_isolate;
> >  	rte_flow_query;
> >  	rte_flow_validate;
> > -	rte_tm_capabilities_get;
> > -	rte_tm_get_number_of_leaf_nodes;
> > -	rte_tm_hierarchy_commit;
> > -	rte_tm_level_capabilities_get;
> > -	rte_tm_mark_ip_dscp;
> > -	rte_tm_mark_ip_ecn;
> > -	rte_tm_mark_vlan_dei;
> > -	rte_tm_node_add;
> > -	rte_tm_node_capabilities_get;
> > -	rte_tm_node_cman_update;
> > -	rte_tm_node_delete;
> > -	rte_tm_node_parent_update;
> > -	rte_tm_node_resume;
> > -	rte_tm_node_shaper_update;
> > -	rte_tm_node_shared_shaper_update;
> > -	rte_tm_node_shared_wred_context_update;
> > -	rte_tm_node_stats_read;
> > -	rte_tm_node_stats_update;
> > -	rte_tm_node_suspend;
> > -	rte_tm_node_type_get;
> > -	rte_tm_node_wfq_weight_mode_update;
> > -	rte_tm_node_wred_context_update;
> > -	rte_tm_shaper_profile_add;
> > -	rte_tm_shaper_profile_delete;
> > -	rte_tm_shared_shaper_add_update;
> > -	rte_tm_shared_shaper_delete;
> > -	rte_tm_shared_wred_context_add_update;
> > -	rte_tm_shared_wred_context_delete;
> > -	rte_tm_wred_profile_add;
> > -	rte_tm_wred_profile_delete;
> >  
> >  	local: *;
> >  };
> > @@ -241,6 +211,38 @@ EXPERIMENTAL {
> >  	__rte_ethdev_trace_rx_burst;
> >  	__rte_ethdev_trace_tx_burst;
> >  	rte_flow_get_aged_flows;
> > +
> > +	# Marked as experimental in 20.11
> > +	rte_tm_capabilities_get;
> > +	rte_tm_get_number_of_leaf_nodes;
> > +	rte_tm_hierarchy_commit;
> > +	rte_tm_level_capabilities_get;
> > +	rte_tm_mark_ip_dscp;
> > +	rte_tm_mark_ip_ecn;
> > +	rte_tm_mark_vlan_dei;
> > +	rte_tm_node_add;
> > +	rte_tm_node_capabilities_get;
> > +	rte_tm_node_cman_update;
> > +	rte_tm_node_delete;
> > +	rte_tm_node_parent_update;
> > +	rte_tm_node_resume;
> > +	rte_tm_node_shaper_update;
> > +	rte_tm_node_shared_shaper_update;
> > +	rte_tm_node_shared_wred_context_update;
> > +	rte_tm_node_stats_read;
> > +	rte_tm_node_stats_update;
> > +	rte_tm_node_suspend;
> > +	rte_tm_node_type_get;
> > +	rte_tm_node_wfq_weight_mode_update;
> > +	rte_tm_node_wred_context_update;
> > +	rte_tm_shaper_profile_add;
> > +	rte_tm_shaper_profile_delete;
> > +	rte_tm_shared_shaper_add_update;
> > +	rte_tm_shared_shaper_delete;
> > +	rte_tm_shared_wred_context_add_update;
> > +	rte_tm_shared_wred_context_delete;
> > +	rte_tm_wred_profile_add;
> > +	rte_tm_wred_profile_delete;
> >  };
> [SNIP]
> 
> So I will re-interate what I said in April, all of these API have existed since DPDK 17.08.
> I find it hard to believe they are all at imminent risk of changing to degree they _all_ warrant EXPERIMENTAL status.

As discussed earlier and agreed by TM and Ethdev maintainers, __rte_experimental tag was introduced several
releases after TM spec was added and TM spec remained untouched ending up making it stable unintentionally. 

Bruce and other maintainers pointed out that we cannot fix it as a "Fixes:" patch in order
to honor ABI commitments, and suggestion was to change the complete spec back to
experimental in next ABI change window and proceed with improvements that make
it stable API in subsequent releases.
> 
> Ray K

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [dpdk-dev] [EXT] Re: [PATCH v2] ethdev: mark all traffic manager API as experimental
  2020-09-10 10:56       ` [dpdk-dev] [EXT] " Nithin Dabilpuram
@ 2020-09-10 11:01         ` Kinsella, Ray
  2020-09-10 11:22           ` Nithin Dabilpuram
  0 siblings, 1 reply; 23+ messages in thread
From: Kinsella, Ray @ 2020-09-10 11:01 UTC (permalink / raw)
  To: Nithin Dabilpuram
  Cc: ferruh.yigit, bruce.richardson, cristian.dumitrescu, thomas,
	bluca, jasvinder.singh, arybchenko, ray.kinsella, nhorman,
	ktraynor, david.marchand, dev, jerinj



On 10/09/2020 11:56, Nithin Dabilpuram wrote:
> On Thu, Sep 10, 2020 at 09:30:15AM +0100, Kinsella, Ray wrote:
>> External Email
>>
>> ----------------------------------------------------------------------
>> On 10/09/2020 09:05, Nithin Dabilpuram wrote:
>>> This patch marks all traffic manager API as experimental as
>>> per discussion mentioned in below thread.
>>>
>>> https://urldefense.proofpoint.com/v2/url?u=https-3A__mails.dpdk.org_archives_dev_2020-2DApril_165364.html&d=DwIDaQ&c=nKjWec2b6R0mOyPaz7xtfQ&r=FZ_tPCbgFOh18zwRPO9H0yDx8VW38vuapifdDfc8SFQ&m=NlIUXSsugCPTKBv9qxsaMHOhTuC90TUqLcGg962VVyA&s=DZL_m0a73uef5Qgal1iFqc9dTdAuUd8J6eC0mZOQlFs&e= 
>>>
>>> Signed-off-by: Nithin Dabilpuram <ndabilpuram@marvell.com>
>>> ---
>>>
>>> v2:
>>> - Updated commit message.
>>>
>>>  lib/librte_ethdev/rte_ethdev_version.map | 62 ++++++++++++++++----------------
>>>  lib/librte_ethdev/rte_tm.h               | 33 ++++++++++++++++-
>>>  2 files changed, 64 insertions(+), 31 deletions(-)
>>>
>>> diff --git a/lib/librte_ethdev/rte_ethdev_version.map b/lib/librte_ethdev/rte_ethdev_version.map
>>> index 1212a17..3da4512 100644
>>> --- a/lib/librte_ethdev/rte_ethdev_version.map
>>> +++ b/lib/librte_ethdev/rte_ethdev_version.map
>>> @@ -135,36 +135,6 @@ DPDK_20.0 {
>>>  	rte_flow_isolate;
>>>  	rte_flow_query;
>>>  	rte_flow_validate;
>>> -	rte_tm_capabilities_get;
>>> -	rte_tm_get_number_of_leaf_nodes;
>>> -	rte_tm_hierarchy_commit;
>>> -	rte_tm_level_capabilities_get;
>>> -	rte_tm_mark_ip_dscp;
>>> -	rte_tm_mark_ip_ecn;
>>> -	rte_tm_mark_vlan_dei;
>>> -	rte_tm_node_add;
>>> -	rte_tm_node_capabilities_get;
>>> -	rte_tm_node_cman_update;
>>> -	rte_tm_node_delete;
>>> -	rte_tm_node_parent_update;
>>> -	rte_tm_node_resume;
>>> -	rte_tm_node_shaper_update;
>>> -	rte_tm_node_shared_shaper_update;
>>> -	rte_tm_node_shared_wred_context_update;
>>> -	rte_tm_node_stats_read;
>>> -	rte_tm_node_stats_update;
>>> -	rte_tm_node_suspend;
>>> -	rte_tm_node_type_get;
>>> -	rte_tm_node_wfq_weight_mode_update;
>>> -	rte_tm_node_wred_context_update;
>>> -	rte_tm_shaper_profile_add;
>>> -	rte_tm_shaper_profile_delete;
>>> -	rte_tm_shared_shaper_add_update;
>>> -	rte_tm_shared_shaper_delete;
>>> -	rte_tm_shared_wred_context_add_update;
>>> -	rte_tm_shared_wred_context_delete;
>>> -	rte_tm_wred_profile_add;
>>> -	rte_tm_wred_profile_delete;
>>>  
>>>  	local: *;
>>>  };
>>> @@ -241,6 +211,38 @@ EXPERIMENTAL {
>>>  	__rte_ethdev_trace_rx_burst;
>>>  	__rte_ethdev_trace_tx_burst;
>>>  	rte_flow_get_aged_flows;
>>> +
>>> +	# Marked as experimental in 20.11
>>> +	rte_tm_capabilities_get;
>>> +	rte_tm_get_number_of_leaf_nodes;
>>> +	rte_tm_hierarchy_commit;
>>> +	rte_tm_level_capabilities_get;
>>> +	rte_tm_mark_ip_dscp;
>>> +	rte_tm_mark_ip_ecn;
>>> +	rte_tm_mark_vlan_dei;
>>> +	rte_tm_node_add;
>>> +	rte_tm_node_capabilities_get;
>>> +	rte_tm_node_cman_update;
>>> +	rte_tm_node_delete;
>>> +	rte_tm_node_parent_update;
>>> +	rte_tm_node_resume;
>>> +	rte_tm_node_shaper_update;
>>> +	rte_tm_node_shared_shaper_update;
>>> +	rte_tm_node_shared_wred_context_update;
>>> +	rte_tm_node_stats_read;
>>> +	rte_tm_node_stats_update;
>>> +	rte_tm_node_suspend;
>>> +	rte_tm_node_type_get;
>>> +	rte_tm_node_wfq_weight_mode_update;
>>> +	rte_tm_node_wred_context_update;
>>> +	rte_tm_shaper_profile_add;
>>> +	rte_tm_shaper_profile_delete;
>>> +	rte_tm_shared_shaper_add_update;
>>> +	rte_tm_shared_shaper_delete;
>>> +	rte_tm_shared_wred_context_add_update;
>>> +	rte_tm_shared_wred_context_delete;
>>> +	rte_tm_wred_profile_add;
>>> +	rte_tm_wred_profile_delete;
>>>  };
>> [SNIP]
>>
>> So I will re-interate what I said in April, all of these API have existed since DPDK 17.08.
>> I find it hard to believe they are all at imminent risk of changing to degree they _all_ warrant EXPERIMENTAL status.
> 
> As discussed earlier and agreed by TM and Ethdev maintainers, __rte_experimental tag was introduced several
> releases after TM spec was added and TM spec remained untouched ending up making it stable unintentionally. 

We discussed it I agree, but to identify how this happened.
I am not sure we all agreed it was ok to give a blanket EXPERIMENTAL. 

This API has been largely unchanged for 3 years.
How can we justify keeping EXPERIMENTAL without a specific reason?
Can you be more specific about planned changes?

> 
> Bruce and other maintainers pointed out that we cannot fix it as a "Fixes:" patch in order
> to honor ABI commitments, and suggestion was to change the complete spec back to
> experimental in next ABI change window and proceed with improvements that make
> it stable API in subsequent releases.
>>
>> Ray K

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [dpdk-dev] [EXT] Re: [PATCH v2] ethdev: mark all traffic manager API as experimental
  2020-09-10 11:01         ` Kinsella, Ray
@ 2020-09-10 11:22           ` Nithin Dabilpuram
  0 siblings, 0 replies; 23+ messages in thread
From: Nithin Dabilpuram @ 2020-09-10 11:22 UTC (permalink / raw)
  To: Kinsella, Ray
  Cc: ferruh.yigit, bruce.richardson, cristian.dumitrescu, thomas,
	bluca, jasvinder.singh, arybchenko, ray.kinsella, nhorman,
	ktraynor, david.marchand, dev, jerinj

On Thu, Sep 10, 2020 at 12:01:49PM +0100, Kinsella, Ray wrote:
> 
> 
> On 10/09/2020 11:56, Nithin Dabilpuram wrote:
> > On Thu, Sep 10, 2020 at 09:30:15AM +0100, Kinsella, Ray wrote:
> >> External Email
> >>
> >> ----------------------------------------------------------------------
> >> On 10/09/2020 09:05, Nithin Dabilpuram wrote:
> >>> This patch marks all traffic manager API as experimental as
> >>> per discussion mentioned in below thread.
> >>>
> >>> https://urldefense.proofpoint.com/v2/url?u=https-3A__mails.dpdk.org_archives_dev_2020-2DApril_165364.html&d=DwIDaQ&c=nKjWec2b6R0mOyPaz7xtfQ&r=FZ_tPCbgFOh18zwRPO9H0yDx8VW38vuapifdDfc8SFQ&m=NlIUXSsugCPTKBv9qxsaMHOhTuC90TUqLcGg962VVyA&s=DZL_m0a73uef5Qgal1iFqc9dTdAuUd8J6eC0mZOQlFs&e= 
> >>>
> >>> Signed-off-by: Nithin Dabilpuram <ndabilpuram@marvell.com>
> >>> ---
> >>>
> >>> v2:
> >>> - Updated commit message.
> >>>
> >>>  lib/librte_ethdev/rte_ethdev_version.map | 62 ++++++++++++++++----------------
> >>>  lib/librte_ethdev/rte_tm.h               | 33 ++++++++++++++++-
> >>>  2 files changed, 64 insertions(+), 31 deletions(-)
> >>>
> >>> diff --git a/lib/librte_ethdev/rte_ethdev_version.map b/lib/librte_ethdev/rte_ethdev_version.map
> >>> index 1212a17..3da4512 100644
> >>> --- a/lib/librte_ethdev/rte_ethdev_version.map
> >>> +++ b/lib/librte_ethdev/rte_ethdev_version.map
> >>> @@ -135,36 +135,6 @@ DPDK_20.0 {
> >>>  	rte_flow_isolate;
> >>>  	rte_flow_query;
> >>>  	rte_flow_validate;
> >>> -	rte_tm_capabilities_get;
> >>> -	rte_tm_get_number_of_leaf_nodes;
> >>> -	rte_tm_hierarchy_commit;
> >>> -	rte_tm_level_capabilities_get;
> >>> -	rte_tm_mark_ip_dscp;
> >>> -	rte_tm_mark_ip_ecn;
> >>> -	rte_tm_mark_vlan_dei;
> >>> -	rte_tm_node_add;
> >>> -	rte_tm_node_capabilities_get;
> >>> -	rte_tm_node_cman_update;
> >>> -	rte_tm_node_delete;
> >>> -	rte_tm_node_parent_update;
> >>> -	rte_tm_node_resume;
> >>> -	rte_tm_node_shaper_update;
> >>> -	rte_tm_node_shared_shaper_update;
> >>> -	rte_tm_node_shared_wred_context_update;
> >>> -	rte_tm_node_stats_read;
> >>> -	rte_tm_node_stats_update;
> >>> -	rte_tm_node_suspend;
> >>> -	rte_tm_node_type_get;
> >>> -	rte_tm_node_wfq_weight_mode_update;
> >>> -	rte_tm_node_wred_context_update;
> >>> -	rte_tm_shaper_profile_add;
> >>> -	rte_tm_shaper_profile_delete;
> >>> -	rte_tm_shared_shaper_add_update;
> >>> -	rte_tm_shared_shaper_delete;
> >>> -	rte_tm_shared_wred_context_add_update;
> >>> -	rte_tm_shared_wred_context_delete;
> >>> -	rte_tm_wred_profile_add;
> >>> -	rte_tm_wred_profile_delete;
> >>>  
> >>>  	local: *;
> >>>  };
> >>> @@ -241,6 +211,38 @@ EXPERIMENTAL {
> >>>  	__rte_ethdev_trace_rx_burst;
> >>>  	__rte_ethdev_trace_tx_burst;
> >>>  	rte_flow_get_aged_flows;
> >>> +
> >>> +	# Marked as experimental in 20.11
> >>> +	rte_tm_capabilities_get;
> >>> +	rte_tm_get_number_of_leaf_nodes;
> >>> +	rte_tm_hierarchy_commit;
> >>> +	rte_tm_level_capabilities_get;
> >>> +	rte_tm_mark_ip_dscp;
> >>> +	rte_tm_mark_ip_ecn;
> >>> +	rte_tm_mark_vlan_dei;
> >>> +	rte_tm_node_add;
> >>> +	rte_tm_node_capabilities_get;
> >>> +	rte_tm_node_cman_update;
> >>> +	rte_tm_node_delete;
> >>> +	rte_tm_node_parent_update;
> >>> +	rte_tm_node_resume;
> >>> +	rte_tm_node_shaper_update;
> >>> +	rte_tm_node_shared_shaper_update;
> >>> +	rte_tm_node_shared_wred_context_update;
> >>> +	rte_tm_node_stats_read;
> >>> +	rte_tm_node_stats_update;
> >>> +	rte_tm_node_suspend;
> >>> +	rte_tm_node_type_get;
> >>> +	rte_tm_node_wfq_weight_mode_update;
> >>> +	rte_tm_node_wred_context_update;
> >>> +	rte_tm_shaper_profile_add;
> >>> +	rte_tm_shaper_profile_delete;
> >>> +	rte_tm_shared_shaper_add_update;
> >>> +	rte_tm_shared_shaper_delete;
> >>> +	rte_tm_shared_wred_context_add_update;
> >>> +	rte_tm_shared_wred_context_delete;
> >>> +	rte_tm_wred_profile_add;
> >>> +	rte_tm_wred_profile_delete;
> >>>  };
> >> [SNIP]
> >>
> >> So I will re-interate what I said in April, all of these API have existed since DPDK 17.08.
> >> I find it hard to believe they are all at imminent risk of changing to degree they _all_ warrant EXPERIMENTAL status.
> > 
> > As discussed earlier and agreed by TM and Ethdev maintainers, __rte_experimental tag was introduced several
> > releases after TM spec was added and TM spec remained untouched ending up making it stable unintentionally. 
> 
> We discussed it I agree, but to identify how this happened.
> I am not sure we all agreed it was ok to give a blanket EXPERIMENTAL. 
> 
> This API has been largely unchanged for 3 years.
> How can we justify keeping EXPERIMENTAL without a specific reason?
> Can you be more specific about planned changes?

Basically the changes atleast which initiated this discussion were

#1 Support to configure shaper in pkt mode that helps ratelimiting in
PPS(Packets per Sec) as opposed to BPS(Bits per Sec).
Needs change to a lot of existing tm param and capability structs.

#2 Support dynamic offload flags based Tx offload for tm packet marking.

#3 Support TM node color stats that report per tm color(red, green, yellow) pkt stats.

All the above three changes though add significant features and doesn't break existing
PMD's. 

> 
> > 
> > Bruce and other maintainers pointed out that we cannot fix it as a "Fixes:" patch in order
> > to honor ABI commitments, and suggestion was to change the complete spec back to
> > experimental in next ABI change window and proceed with improvements that make
> > it stable API in subsequent releases.
> >>
> >> Ray K

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [dpdk-dev] [PATCH v3] ethdev: mark all traffic manager API as experimental
  2020-09-10 10:09   ` [dpdk-dev] [PATCH v3] " Nithin Dabilpuram
@ 2020-09-10 11:34     ` Ferruh Yigit
  0 siblings, 0 replies; 23+ messages in thread
From: Ferruh Yigit @ 2020-09-10 11:34 UTC (permalink / raw)
  To: Nithin Dabilpuram, bruce.richardson, cristian.dumitrescu, thomas,
	bluca, jasvinder.singh, arybchenko, ray.kinsella, nhorman,
	ktraynor, david.marchand, Ray Kinsella, John McNamara,
	Marko Kovacevic
  Cc: dev, jerinj

On 9/10/2020 11:09 AM, Nithin Dabilpuram wrote:
> This patch marks all traffic manager API as experimental as
> per deprecation notice[1] and discussion[2] mentioned in following
> threads.
> 
> [1] https://mails.dpdk.org/archives/dev/2020-May/166221.html
> [2] https://mails.dpdk.org/archives/dev/2020-April/165364.html
> 
> Signed-off-by: Nithin Dabilpuram <ndabilpuram@marvell.com>
> Acked-by: Cristian Dumitrescu <cristian.dumitrescu@intel.com>

Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>

Applied to dpdk-next-net/main, thanks.


I see there is discussion on the experimental status of the APIs, I am
proceeding with the patchset since there is an existing deprecation notice for
it, but if some APIs decided to be non experimental that change can be done
incrementally on top of this.

^ permalink raw reply	[flat|nested] 23+ messages in thread

end of thread, other threads:[~2020-09-10 11:34 UTC | newest]

Thread overview: 23+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-05-01 17:16 [dpdk-dev] [PATCH] doc: deprication notice to mark tm spec as experimental Nithin Dabilpuram
2020-05-05  6:47 ` Ray Kinsella
2020-05-05  7:45   ` [dpdk-dev] [EXT] " Nithin Dabilpuram
2020-05-05  8:07 ` [dpdk-dev] [PATCH v2] " Nithin Dabilpuram
2020-05-05  8:10   ` Ray Kinsella
2020-05-05  8:55   ` Dumitrescu, Cristian
2020-05-21 10:49     ` Jerin Jacob
2020-05-24 20:58       ` Nithin Kumar D
2020-05-24 23:33       ` Thomas Monjalon
2020-09-09 17:22 ` [dpdk-dev] [PATCH] ethdev: mark all traffic manager API " Nithin Dabilpuram
2020-09-09 17:49   ` Dumitrescu, Cristian
2020-09-09 18:23   ` Ferruh Yigit
2020-09-10  8:05   ` [dpdk-dev] [PATCH v2] " Nithin Dabilpuram
2020-09-10  8:30     ` Kinsella, Ray
2020-09-10 10:56       ` [dpdk-dev] [EXT] " Nithin Dabilpuram
2020-09-10 11:01         ` Kinsella, Ray
2020-09-10 11:22           ` Nithin Dabilpuram
2020-09-10  8:36     ` [dpdk-dev] " Ferruh Yigit
2020-09-10  8:37       ` Dumitrescu, Cristian
2020-09-10  9:54         ` [dpdk-dev] [EXT] " Nithin Dabilpuram
2020-09-10  9:51       ` [dpdk-dev] [EXT] " Nithin Dabilpuram
2020-09-10 10:09   ` [dpdk-dev] [PATCH v3] " Nithin Dabilpuram
2020-09-10 11:34     ` Ferruh Yigit

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).