diff options
| author | Linas Vepstas <[email protected]> | 2006-09-18 20:58:06 -0700 |
|---|---|---|
| committer | Jeff Garzik <[email protected]> | 2006-09-19 00:04:29 -0400 |
| commit | 72e8d6bbc151ca670c66d58a37e5bbfbc041db69 (patch) | |
| tree | 20546e26d6b09ba8e3e8421b8a8945e1006833a9 | |
| parent | f50e5ea14baa321c5f0ff71707a83b02bf5b9398 (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 <[email protected]>
Cc: John Ronciak <[email protected]>
Cc: Jesse Brandeburg <[email protected]>
Cc: Jeff Kirsher <[email protected]>
Acked-by: Auke Kok <[email protected]>
Cc: Jeff Garzik <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Jeff Garzik <[email protected]>
| -rw-r--r-- | drivers/net/e1000/e1000_main.c | 1 |
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 if (netif_running(netdev)) e1000_down(adapter); + pci_disable_device(pdev); /* Request a slot slot reset. */ return PCI_ERS_RESULT_NEED_RESET; |