On 6/21/19 12:52 PM, David Marchand wrote:
On Fri, Jun 21, 2019 at 11:41 AM Andrew Rybchenko <arybche...@solarflare.com>
wrote:
If PCI Ethernet device driver removes it on close
(RTE_ETH_DEV_CLOSE_REMOVE) and later PCI device itself is unplugged,
it should not fail because of Ethernet device is already removed.
Fixes: 23ea57a2a0ce ("ethdev: complete closing of port")
Cc: sta...@dpdk.org
Signed-off-by: Andrew Rybchenko <arybche...@solarflare.com>
Reviewed-by: Ivan Malov <ivan.ma...@oktetlabs.ru>
---
Cc: Thomas Monjalon <tho...@monjalon.net>
Cc: Ferruh Yigit <ferruh.yi...@intel.com>
lib/librte_ethdev/rte_ethdev_pci.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/lib/librte_ethdev/rte_ethdev_pci.h
b/lib/librte_ethdev/rte_ethdev_pci.h
index 23257e986..ccdbb46ec 100644
--- a/lib/librte_ethdev/rte_ethdev_pci.h
+++ b/lib/librte_ethdev/rte_ethdev_pci.h
@@ -184,7 +184,7 @@ rte_eth_dev_pci_generic_remove(struct rte_pci_device
*pci_dev,
eth_dev = rte_eth_dev_allocated(pci_dev->device.name);
if (!eth_dev)
- return -ENODEV;
+ return 0;
if (dev_uninit) {
ret = dev_uninit(eth_dev);
--
2.17.1
We are changing the behavior for all drivers, while I understand this
should apply to the ones that have the RTE_ETH_DEV_CLOSE_REMOVE flag.
Btw, I had reported this earlier [1], care to add a little Reported-by for
me ? :-)
Yes, I agree. Unfortunately there is no ethdev here to check
RTE_ETH_DEV_CLOSE_REMOVE. It could be PCI driver flag for the
feature, but I'm not sure if it makes sense to add one more
flag for transition.
1: http://mails.dpdk.org/archives/dev/2019-June/134150.html