Browse Source

ixgbe: Fixing EEH handler to handle more than one error

After commmit 4b77b0a2ba27d64f58f16d8d4d48d8319dda36ff EEH breaks
after the second error, since it calls pci_restore_state()
but it returns 0, since pci->state_saved is false.

So, this patch just call pci_save_state() after pci_restore_state().

Signed-off-by: Breno Leitao <leitao@linux.vnet.ibm.com>
Acked-by: Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Breno Leitao 15 years ago
parent
commit
c0e1f68bce
1 changed files with 1 additions and 0 deletions
  1. 1 0
      drivers/net/ixgbe/ixgbe_main.c

+ 1 - 0
drivers/net/ixgbe/ixgbe_main.c

@@ -5994,6 +5994,7 @@ static pci_ers_result_t ixgbe_io_slot_reset(struct pci_dev *pdev)
 	} else {
 	} else {
 		pci_set_master(pdev);
 		pci_set_master(pdev);
 		pci_restore_state(pdev);
 		pci_restore_state(pdev);
+		pci_save_state(pdev);
 
 
 		pci_wake_from_d3(pdev, false);
 		pci_wake_from_d3(pdev, false);