aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLinas Vepstas <linas@austin.ibm.com>2006-09-18 23:58:06 -0400
committerJeff Garzik <jeff@garzik.org>2006-09-19 00:04:29 -0400
commit72e8d6bbc151ca670c66d58a37e5bbfbc041db69 (patch)
tree20546e26d6b09ba8e3e8421b8a8945e1006833a9
parentf50e5ea14baa321c5f0ff71707a83b02bf5b9398 (diff)
[PATCH] e1000 disable device on PCI error
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 e1000 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> Cc: John Ronciak <john.ronciak@intel.com> Cc: Jesse Brandeburg <jesse.brandeburg@intel.com> Cc: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Acked-by: Auke Kok <auke-jan.h.kok@intel.com> Cc: Jeff Garzik <jeff@garzik.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
-rw-r--r--drivers/net/e1000/e1000_main.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/net/e1000/e1000_main.c b/drivers/net/e1000/e1000_main.c
index acf818b1d73b..88276a6e656c 100644
--- a/drivers/net/e1000/e1000_main.c
+++ b/drivers/net/e1000/e1000_main.c
@@ -4811,6 +4811,7 @@ static pci_ers_result_t e1000_io_error_detected(struct pci_dev *pdev, pci_channe
4811 4811
4812 if (netif_running(netdev)) 4812 if (netif_running(netdev))
4813 e1000_down(adapter); 4813 e1000_down(adapter);
4814 pci_disable_device(pdev);
4814 4815
4815 /* Request a slot slot reset. */ 4816 /* Request a slot slot reset. */
4816 return PCI_ERS_RESULT_NEED_RESET; 4817 return PCI_ERS_RESULT_NEED_RESET;