[dpdk-dev] [PATCH v2] doc: update API deprecation for device reset

Thomas Monjalon thomas at monjalon.net
Mon Jan 28 01:20:24 CET 2019


Hi,

I don't remember why this deprecation notice did not get any feedback
in the 18.11 cycle. It looks to be outdated now.
In case you still plan some changes, I give my opinion below.

20/09/2018 06:59, Qi Zhang:
> Device reset may have the dependency, for example, a VF reset expects
> PF ready, or a NIC function as a part of a SOC need to wait for other
> parts of the system be ready, these are time-consuming tasks and will
> block current thread.
> 
> So we rename rte_eth_dev_reset to rte_eth_dev_reset_async as an async
> API, that makes things easy for an application that what to reset the
> device from the interrupt thread since typically a
> RTE_ETH_EVENT_INTR_RESET handler is invoked in interrupt thread.
> 
> RFC patch:
> http://patchwork.dpdk.org/patch/44989/
> 
> Signed-off-by: Qi Zhang <qi.z.zhang at intel.com>

I remmember I did not like this function when it was introduced.
I think the cases addressed by rte_eth_dev_reset() should be handled
with hotplug mechanism.

> --- a/doc/guides/rel_notes/deprecation.rst
> +++ b/doc/guides/rel_notes/deprecation.rst
> +* ethdev: In v19.02 ``rte_eth_dev_reset`` is renamed to

Is it still planned for 19.05?

> +  ``rte_eth_dev_reset_async``. As the name, it is an async API.

Why removing the old function?
We could avoid breaking applications by adding an async flavor
of the function.

> +  Application should not assume device reset is finished after
> +  ``rte_eth_dev_reset_async`` return, it should always wait for a
> +  RTE_ETH_EVENT_RESET_COMPLETE event and check the reset result.

This could be done in the synchronous flavor with sleeps in a loop.




More information about the dev mailing list