|
@@ -2227,6 +2227,11 @@ static pci_ers_result_t ixgb_io_error_detected(struct pci_dev *pdev,
|
|
|
struct net_device *netdev = pci_get_drvdata(pdev);
|
|
|
struct ixgb_adapter *adapter = netdev_priv(netdev);
|
|
|
|
|
|
+ netif_device_detach(netdev);
|
|
|
+
|
|
|
+ if (state == pci_channel_io_perm_failure)
|
|
|
+ return PCI_ERS_RESULT_DISCONNECT;
|
|
|
+
|
|
|
if (netif_running(netdev))
|
|
|
ixgb_down(adapter, true);
|
|
|
|