]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
be2net: Fix EEH error reset before a flash dump completes
authorSomnath Kotur <somnath.kotur@emulex.com>
Wed, 2 May 2012 03:41:01 +0000 (03:41 +0000)
committerMaxim Uvarov <maxim.uvarov@oracle.com>
Mon, 7 May 2012 21:44:31 +0000 (14:44 -0700)
An EEH error can cause the FW to trigger a flash debug dump.
Resetting the card while flash dump is in progress can cause it not to recover.
Wait for it to finish before letting EEH flow to reset the card.

Signed-off-by: Sathya Perla <Sathya.Perla@emulex.com>
Signed-off-by: Somnath Kotur <somnath.kotur@emulex.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/benet/be_main.c

index 7005bf7ec86f5c5b66b3d89e5226494905888924..c62d729a4e5503055acdd8f7c65777a7840cc1de 100644 (file)
@@ -3788,6 +3788,11 @@ static pci_ers_result_t be_eeh_err_detected(struct pci_dev *pdev,
 
        pci_disable_device(pdev);
 
+       /* The error could cause the FW to trigger a flash debug dump.
+        * Resetting the card while flash dump is in progress
+        * can cause it not to recover; wait for it to finish
+        */
+       ssleep(30);
        return PCI_ERS_RESULT_NEED_RESET;
 }