summaryrefslogtreecommitdiffstats
path: root/drivers/net/e100.c
diff options
context:
space:
mode:
authorLinas Vepstas <linas@austin.ibm.com>2006-08-31 23:27:48 +0200
committerAuke Kok <juke-jan.h.kok@intel.com>2006-08-31 23:27:48 +0200
commitb1d26f24e864204dfaa82b1252477e981ba9ef24 (patch)
tree3ebdd35056a551d2605ea62fedd30f0476abf0c7 /drivers/net/e100.c
parente100: Convert e100 to use netdev_alloc_skb(). (diff)
downloadlinux-b1d26f24e864204dfaa82b1252477e981ba9ef24.tar.xz
linux-b1d26f24e864204dfaa82b1252477e981ba9ef24.zip
e100: fix error recovery
A recent patch in -mm3 titled "gregkh-pci-pci-don-t-enable-device-if-already-enabled.patch" causes pci_enable_device() to be a no-op if the kernel thinks that the device is already enabled. This change breaks the PCI error recovery mechanism in the e100 device driver, since, after PCI slot reset, the card is no longer enabled. This is a trivial fix for this problem. Tested. Signed-off-by: Linas Vepstas <linas@austin.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
Diffstat (limited to 'drivers/net/e100.c')
-rw-r--r--drivers/net/e100.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/net/e100.c b/drivers/net/e100.c
index 458af6a80bbb..e12cc68deaa4 100644
--- a/drivers/net/e100.c
+++ b/drivers/net/e100.c
@@ -2791,6 +2791,7 @@ static pci_ers_result_t e100_io_error_detected(struct pci_dev *pdev, pci_channel
/* Detach; put netif into state similar to hotplug unplug. */
netif_poll_enable(netdev);
netif_device_detach(netdev);
+ pci_disable_device(pdev);
/* Request a slot reset. */
return PCI_ERS_RESULT_NEED_RESET;