[dpdk-dev] doc: announce API change for ethdev port info

Message ID 1508164067-22952-1-git-send-email-ivan.boule@6wind.com (mailing list archive)
State Rejected, archived
Delegated to: Thomas Monjalon
Headers

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/Intel-compilation success Compilation OK

Commit Message

Ivan Boule Oct. 16, 2017, 2:27 p.m. UTC
  To help administrative tasks on ports, new per-port information need
to be added into the data structure rte_eth_dev_info supplied by the
dev_infos_get() function exported by a Poll Mode Driver.

See http://dpdk.org/ml/archives/dev/2017-September/074885.html for
details.

Signed-off-by: Ivan Boule <ivan.boule@6wind.com>
Acked-by: Olivier Matz <olivier.matz@6wind.com>
---
 doc/guides/rel_notes/deprecation.rst | 8 ++++++++
 1 file changed, 8 insertions(+)
  

Comments

Thomas Monjalon Nov. 14, 2017, 11:50 p.m. UTC | #1
16/10/2017 16:27, Ivan Boule:
> To help administrative tasks on ports, new per-port information need
> to be added into the data structure rte_eth_dev_info supplied by the
> dev_infos_get() function exported by a Poll Mode Driver.
> 
> See http://dpdk.org/ml/archives/dev/2017-September/074885.html for
> details.
> 
> Signed-off-by: Ivan Boule <ivan.boule@6wind.com>
> Acked-by: Olivier Matz <olivier.matz@6wind.com>
> ---
> +* librte_ether: additional fields will be added into the ``rte_eth_dev_info``
> +  structure in 18.02, breaking the API. These fields will contain:
> +
> +  - the set of supported link modes,
> +  - the set of advertised link modes,
> +  - the type of port connector,
> +  - autonegotiation enabled or not.

This patch is not accepted in 17.11 for following reasons:
- it requires at least 3 acks
- we are not going to break API in 18.02, except maybe for EAL devargs
- the link mode is redundant with the speed capabilities
- such fields require work (and time) for every PMD to be fully supported
- we should discuss more generally which infos are in the scope of this function

Sorry for the short notice, I was waiting for comments and to see if
other deprecations were sent (or not) for ethdev.
  
Olivier Matz Nov. 15, 2017, 8:13 a.m. UTC | #2
On Wed, Nov 15, 2017 at 12:50:55AM +0100, Thomas Monjalon wrote:
> 16/10/2017 16:27, Ivan Boule:
> > To help administrative tasks on ports, new per-port information need
> > to be added into the data structure rte_eth_dev_info supplied by the
> > dev_infos_get() function exported by a Poll Mode Driver.
> > 
> > See http://dpdk.org/ml/archives/dev/2017-September/074885.html for
> > details.
> > 
> > Signed-off-by: Ivan Boule <ivan.boule@6wind.com>
> > Acked-by: Olivier Matz <olivier.matz@6wind.com>
> > ---
> > +* librte_ether: additional fields will be added into the ``rte_eth_dev_info``
> > +  structure in 18.02, breaking the API. These fields will contain:
> > +
> > +  - the set of supported link modes,
> > +  - the set of advertised link modes,
> > +  - the type of port connector,
> > +  - autonegotiation enabled or not.
> 
> This patch is not accepted in 17.11 for following reasons:
> - it requires at least 3 acks
> - we are not going to break API in 18.02, except maybe for EAL devargs
> - the link mode is redundant with the speed capabilities
> - such fields require work (and time) for every PMD to be fully supported
> - we should discuss more generally which infos are in the scope of this function
> 
> Sorry for the short notice, I was waiting for comments and to see if
> other deprecations were sent (or not) for ethdev.

Thomas, be aware that it's very frustrating to have this kind feedback 9
weeks after the submission of the RFC, and few days before the release.

Olivier
  
Thomas Monjalon Nov. 15, 2017, 3:23 p.m. UTC | #3
15/11/2017 09:13, Olivier MATZ:
> On Wed, Nov 15, 2017 at 12:50:55AM +0100, Thomas Monjalon wrote:
> > 16/10/2017 16:27, Ivan Boule:
> > > To help administrative tasks on ports, new per-port information need
> > > to be added into the data structure rte_eth_dev_info supplied by the
> > > dev_infos_get() function exported by a Poll Mode Driver.
> > > 
> > > See http://dpdk.org/ml/archives/dev/2017-September/074885.html for
> > > details.
> > > 
> > > Signed-off-by: Ivan Boule <ivan.boule@6wind.com>
> > > Acked-by: Olivier Matz <olivier.matz@6wind.com>
> > > ---
> > > +* librte_ether: additional fields will be added into the ``rte_eth_dev_info``
> > > +  structure in 18.02, breaking the API. These fields will contain:
> > > +
> > > +  - the set of supported link modes,
> > > +  - the set of advertised link modes,
> > > +  - the type of port connector,
> > > +  - autonegotiation enabled or not.
> > 
> > This patch is not accepted in 17.11 for following reasons:
> > - it requires at least 3 acks
> > - we are not going to break API in 18.02, except maybe for EAL devargs
> > - the link mode is redundant with the speed capabilities
> > - such fields require work (and time) for every PMD to be fully supported
> > - we should discuss more generally which infos are in the scope of this function
> > 
> > Sorry for the short notice, I was waiting for comments and to see if
> > other deprecations were sent (or not) for ethdev.
> 
> Thomas, be aware that it's very frustrating to have this kind feedback 9
> weeks after the submission of the RFC, and few days before the release.

Yes, sure I know how it can be frustrating and I am sorry about that.
I forgot to review the RFC and I forgot to comment this deprecation notice.
Then it was pending like other deprecation notices, but no new deprecation
notice appeared for 18.02, and nobody did a comment on those patches.
So I think it is better to just postpone it for 18.05.
Anyway we can comment and work on the RFC in the meantime.
  
Olivier Matz Feb. 13, 2018, 1:15 p.m. UTC | #4
On Mon, Oct 16, 2017 at 04:27:47PM +0200, Ivan Boule wrote:
> To help administrative tasks on ports, new per-port information need
> to be added into the data structure rte_eth_dev_info supplied by the
> dev_infos_get() function exported by a Poll Mode Driver.
> 
> See http://dpdk.org/ml/archives/dev/2017-September/074885.html for
> details.
> 
> Signed-off-by: Ivan Boule <ivan.boule@6wind.com>
> Acked-by: Olivier Matz <olivier.matz@6wind.com>

I didn't have the time to work on this topic for this release.
Let's first wait that a new RFC is proposed, then I will resubmit
a new deprecation notice if required.
  

Patch

diff --git a/doc/guides/rel_notes/deprecation.rst b/doc/guides/rel_notes/deprecation.rst
index 52058f5..1430120 100644
--- a/doc/guides/rel_notes/deprecation.rst
+++ b/doc/guides/rel_notes/deprecation.rst
@@ -92,3 +92,11 @@  Deprecation Notices
   The non-"do-sig" versions of the hash tables will be removed
   (including the ``signature_offset`` parameter)
   and the "do-sig" versions renamed accordingly.
+
+* librte_ether: additional fields will be added into the ``rte_eth_dev_info``
+  structure in 18.02, breaking the API. These fields will contain:
+
+  - the set of supported link modes,
+  - the set of advertised link modes,
+  - the type of port connector,
+  - autonegotiation enabled or not.