[prev in list] [next in list] [prev in thread] [next in thread]
List: dpdk-dev
Subject: [dpdk-dev] [PATCH] kni: fix crash for KNI interface remove
From: Ferruh Yigit <ferruh.yigit () intel ! com>
Date: 2016-08-31 13:06:26
Message-ID: 1472648786-32404-1-git-send-email-ferruh.yigit () intel ! com
[Download RAW message or body]
Removing KNI interface that has no PCI driver for ethtool support cause
kernel crash.
Fixes: 109febfe58f9 ("net/igb: move PCI device IDs from EAL")
Fixes: 221fba3b987c ("net/ixgbe: move PCI device IDs from EAL")
Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
---
lib/librte_eal/linuxapp/kni/kni_misc.c | 10 ++++++----
1 file changed, 6 insertions(+), 4 deletions(-)
diff --git a/lib/librte_eal/linuxapp/kni/kni_misc.c b/lib/librte_eal/linuxapp/kni/kni_misc.c
index 41a331f..acb961f 100644
--- a/lib/librte_eal/linuxapp/kni/kni_misc.c
+++ b/lib/librte_eal/linuxapp/kni/kni_misc.c
@@ -355,10 +355,12 @@ kni_dev_remove(struct kni_dev *dev)
if (!dev)
return -ENODEV;
- if (pci_match_id(ixgbe_pci_tbl, dev->pci_dev))
- ixgbe_kni_remove(dev->pci_dev);
- else if (pci_match_id(igb_pci_tbl, dev->pci_dev))
- igb_kni_remove(dev->pci_dev);
+ if (dev->pci_dev) {
+ if (pci_match_id(ixgbe_pci_tbl, dev->pci_dev))
+ ixgbe_kni_remove(dev->pci_dev);
+ else if (pci_match_id(igb_pci_tbl, dev->pci_dev))
+ igb_kni_remove(dev->pci_dev);
+ }
if (dev->net_dev) {
unregister_netdev(dev->net_dev);
--
2.7.4
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic