doc: mark internal symbols in ethdev

Message ID 20200623134952.1273562-1-ferruh.yigit@intel.com (mailing list archive)
State Accepted, archived
Delegated to: Ferruh Yigit
Headers
Series doc: mark internal symbols in ethdev |

Checks

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

Commit Message

Ferruh Yigit June 23, 2020, 1:49 p.m. UTC
  The APIs are marked in the doxygen comment but better to mark the
symbols too. This is planned for v20.11 release.

Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
---
 doc/guides/rel_notes/deprecation.rst | 6 ++++++
 1 file changed, 6 insertions(+)
  

Comments

Andrew Rybchenko June 23, 2020, 2:29 p.m. UTC | #1
On 6/23/20 4:49 PM, Ferruh Yigit wrote:
> The APIs are marked in the doxygen comment but better to mark the
> symbols too. This is planned for v20.11 release.
> 
> Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>

Acked-by: Andrew Rybchenko <arybchenko@solarflare.com>
  
Ray Kinsella June 26, 2020, 8:49 a.m. UTC | #2
On 23/06/2020 14:49, Ferruh Yigit wrote:
> The APIs are marked in the doxygen comment but better to mark the
> symbols too. This is planned for v20.11 release.
> 
> Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
> ---
>  doc/guides/rel_notes/deprecation.rst | 6 ++++++
>  1 file changed, 6 insertions(+)
> 
> diff --git a/doc/guides/rel_notes/deprecation.rst b/doc/guides/rel_notes/deprecation.rst
> index 0bee92425..0b0f75720 100644
> --- a/doc/guides/rel_notes/deprecation.rst
> +++ b/doc/guides/rel_notes/deprecation.rst
> @@ -98,6 +98,12 @@ Deprecation Notices
>    Existing ``rte_eth_rx_descriptor_status`` and ``rte_eth_tx_descriptor_status``
>    APIs can be used as replacement.
>  
> +* ethdev: Some internal APIs for driver usage are exported in the .map file.
> +  Now DPDK has ``__rte_internal`` marker so we can mark internal APIs and move
> +  them to the INTERNAL block in .map. Although these APIs are internal it will
> +  break the ABI checks, that is why change is planned for 20.11.
> +  The list of internal APIs are mainly ones listed in ``rte_ethdev_driver.h``.
> +

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

A bunch of other folks have already annotated "internal" APIs, and added entries to 
libabigail.abignore to suppress warnings. If you are 100% certain these are never used 
by end applications, you could do likewise.

That said, depreciation notice and completing in 20.11 is definitely the better approach. 
See https://git.dpdk.org/dpdk/tree/devtools/libabigail.abignore#n53



>  * 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
>
  
Thomas Monjalon July 10, 2020, 2:20 p.m. UTC | #3
26/06/2020 10:49, Kinsella, Ray:
> On 23/06/2020 14:49, Ferruh Yigit wrote:
> > The APIs are marked in the doxygen comment but better to mark the
> > symbols too. This is planned for v20.11 release.
> > 
> > Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
> > ---
> > +* ethdev: Some internal APIs for driver usage are exported in the .map file.
> > +  Now DPDK has ``__rte_internal`` marker so we can mark internal APIs and move
> > +  them to the INTERNAL block in .map. Although these APIs are internal it will
> > +  break the ABI checks, that is why change is planned for 20.11.
> > +  The list of internal APIs are mainly ones listed in ``rte_ethdev_driver.h``.
> > +
> 
> Acked-by: Ray Kinsella <mdr@ashroe.eu>
> 
> A bunch of other folks have already annotated "internal" APIs, and added entries to 
> libabigail.abignore to suppress warnings. If you are 100% certain these are never used 
> by end applications, you could do likewise.
> 
> That said, depreciation notice and completing in 20.11 is definitely the better approach. 
> See https://git.dpdk.org/dpdk/tree/devtools/libabigail.abignore#n53

I agree we can wait 20.11.

Acked-by: Thomas Monjalon <thomas@monjalon.net>
  
Ferruh Yigit July 10, 2020, 4:17 p.m. UTC | #4
On 7/10/2020 3:20 PM, Thomas Monjalon wrote:
> 26/06/2020 10:49, Kinsella, Ray:
>> On 23/06/2020 14:49, Ferruh Yigit wrote:
>>> The APIs are marked in the doxygen comment but better to mark the
>>> symbols too. This is planned for v20.11 release.
>>>
>>> Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
>>> ---
>>> +* ethdev: Some internal APIs for driver usage are exported in the .map file.
>>> +  Now DPDK has ``__rte_internal`` marker so we can mark internal APIs and move
>>> +  them to the INTERNAL block in .map. Although these APIs are internal it will
>>> +  break the ABI checks, that is why change is planned for 20.11.
>>> +  The list of internal APIs are mainly ones listed in ``rte_ethdev_driver.h``.
>>> +
>>
>> Acked-by: Ray Kinsella <mdr@ashroe.eu>
>>
>> A bunch of other folks have already annotated "internal" APIs, and added entries to 
>> libabigail.abignore to suppress warnings. If you are 100% certain these are never used 
>> by end applications, you could do likewise.
>>
>> That said, depreciation notice and completing in 20.11 is definitely the better approach. 
>> See https://git.dpdk.org/dpdk/tree/devtools/libabigail.abignore#n53
> 
> I agree we can wait 20.11.
> 
> Acked-by: Thomas Monjalon <thomas@monjalon.net>
> 

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

Patch

diff --git a/doc/guides/rel_notes/deprecation.rst b/doc/guides/rel_notes/deprecation.rst
index 0bee92425..0b0f75720 100644
--- a/doc/guides/rel_notes/deprecation.rst
+++ b/doc/guides/rel_notes/deprecation.rst
@@ -98,6 +98,12 @@  Deprecation Notices
   Existing ``rte_eth_rx_descriptor_status`` and ``rte_eth_tx_descriptor_status``
   APIs can be used as replacement.
 
+* ethdev: Some internal APIs for driver usage are exported in the .map file.
+  Now DPDK has ``__rte_internal`` marker so we can mark internal APIs and move
+  them to the INTERNAL block in .map. Although these APIs are internal it will
+  break the ABI checks, that is why change is planned for 20.11.
+  The list of internal APIs are mainly ones listed in ``rte_ethdev_driver.h``.
+
 * 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