[dpdk-dev] [PATCH] doc: add deprecation notice to fix ethdev API returning void

Jerin Jacob Kollanukkaran jerinj at marvell.com
Wed Jul 24 11:17:15 CEST 2019


> -----Original Message-----
> From: dev <dev-bounces at dpdk.org> On Behalf Of Andrew Rybchenko
> Sent: Tuesday, July 23, 2019 7:38 PM
> To: Thomas Monjalon <thomas at monjalon.net>; Ferruh Yigit
> <ferruh.yigit at intel.com>
> Cc: dev at dpdk.org
> Subject: [dpdk-dev] [PATCH] doc: add deprecation notice to fix ethdev API
> returning void
> 
> void return value is bad for get API (like rte_eth_dev_info-get()) since caller
> does not know if the function does its job or not and output value is filled in.
> 
> void return value is bad for state changing API (like
> rte_eth_promiscuous_enable()) since caller should use get API to
> understand if state is really changed.
> 
> Signed-off-by: Andrew Rybchenko <arybchenko at solarflare.com>

Acked-by: Jerin Jacob <jerinj at marvell.com>

> ---
>  doc/guides/rel_notes/deprecation.rst | 14 ++++++++++++++
>  1 file changed, 14 insertions(+)
> 
> diff --git a/doc/guides/rel_notes/deprecation.rst
> b/doc/guides/rel_notes/deprecation.rst
> index 37b8592b6..79689f136 100644
> --- a/doc/guides/rel_notes/deprecation.rst
> +++ b/doc/guides/rel_notes/deprecation.rst
> @@ -59,6 +59,20 @@ Deprecation Notices
>    Target release for removal of the legacy API will be defined once most
>    PMDs have switched to rte_flow.
> 
> +* ethdev: update API functions returning ``void`` to return ``int``
> +with
> +  negative errno values to indicate various error conditions (e.g.
> +  invalid port ID, unsupported operation, failed operation):
> +
> +  - ``rte_eth_dev_info_get``
> +  - ``rte_eth_promiscuous_enable`` and ``rte_eth_promiscuous_disable``
> +  - ``rte_eth_allmulticast_enable`` and
> + ``rte_eth_allmulticast_disable``
> +  - ``rte_eth_link_get`` and ``rte_eth_link_get_nowait``
> +  - ``rte_eth_dev_stop``
> +  - ``rte_eth_dev_close``
> +  - ``rte_eth_xstats_reset``
> +  - ``rte_eth_macaddr_get``
> +  - ``rte_eth_dev_owner_delete``
> +
>  * cryptodev: support for using IV with all sizes is added, J0 still can
>    be used but only when IV length in following structs
> ``rte_crypto_auth_xform``,
>    ``rte_crypto_aead_xform`` is set to zero. When IV length is greater or equal
> --
> 2.17.1



More information about the dev mailing list