Add ownership mechanism to DPDK Ethernet devices to avoid multiple management of a device by different DPDK entities.
V2: Synchronize ethdev port creation. Synchronize port ownership mechanism. Rename owner remove API to rte_eth_dev_owner_unset. Remove "ethdev: free a port by a dedicated API" patch - passed to another series. Add "ethdev: fix port data reset timing" patch. Cahnge owner get API to return int value and to pass copy of the owner structure. Adjust testpmd to the improved owner get API. Adjust documentations. Points: 1. rte_eth_dev_owner_claim API was suggested as a blocked API to set owner, I didn't find use case for this. 2. Add comments for all APIs which are required ownership setting before the calling - still was not done, other suggestions? Matan Azrad (6): ethdev: fix port data reset timing ethdev: add port ownership ethdev: synchronize port allocation net/failsafe: free an eth port by a dedicated API net/failsafe: use ownership mechanism to own ports app/testpmd: adjust ethdev port ownership app/test-pmd/cmdline.c | 88 +++++------- app/test-pmd/cmdline_flow.c | 2 +- app/test-pmd/config.c | 37 ++--- app/test-pmd/parameters.c | 4 +- app/test-pmd/testpmd.c | 63 ++++++--- app/test-pmd/testpmd.h | 3 + config/common_base | 4 +- doc/guides/prog_guide/poll_mode_drv.rst | 14 +- drivers/net/failsafe/failsafe.c | 7 + drivers/net/failsafe/failsafe_eal.c | 10 ++ drivers/net/failsafe/failsafe_ether.c | 2 +- drivers/net/failsafe/failsafe_private.h | 2 + lib/librte_ether/rte_ethdev.c | 243 +++++++++++++++++++++++++++++--- lib/librte_ether/rte_ethdev.h | 89 ++++++++++++ lib/librte_ether/rte_ethdev_version.map | 12 ++ 15 files changed, 462 insertions(+), 118 deletions(-) -- 1.8.3.1