e1000e: fix EEH recovery during reset on PPC
authorJeff Kirsher <jeffrey.t.kirsher@intel.com>
Wed, 25 Jun 2008 00:01:29 +0000 (17:01 -0700)
committerJeff Garzik <jgarzik@redhat.com>
Fri, 27 Jun 2008 05:27:48 +0000 (01:27 -0400)
EEH is not recovering in a reasonable amount of time on PPC during
e1000e_down().

Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
drivers/net/e1000e/netdev.c

index cab1835173cd9bb7096f82647a5f59ae13eaba18..648a87bbf4670ae8f87ffce4f123769d66de84f6 100644 (file)
@@ -2535,7 +2535,8 @@ void e1000e_down(struct e1000_adapter *adapter)
        adapter->link_speed = 0;
        adapter->link_duplex = 0;
 
-       e1000e_reset(adapter);
+       if (!pci_channel_offline(adapter->pdev))
+               e1000e_reset(adapter);
        e1000_clean_tx_ring(adapter);
        e1000_clean_rx_ring(adapter);