bna: Fix for handling firmware heartbeat failure
authorRasesh Mody <rmody@brocade.com>
Mon, 4 Apr 2011 08:29:59 +0000 (08:29 +0000)
committerDavid S. Miller <davem@davemloft.net>
Wed, 6 Apr 2011 19:39:07 +0000 (12:39 -0700)
This patch contains a fix for gracefully handling firmware heartbeat
failure instead of forcing panic.

Signed-off-by: Debashis Dutt <ddutt@brocade.com>
Signed-off-by: Rasesh Mody <rmody@brocade.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/bna/bfa_ioc.c

index 34933cb9569ffc070692d8031a8c50eb32b07111..e3de0b8625cde247ee69f5fd45f06c32cfda53a2 100644 (file)
@@ -2219,13 +2219,9 @@ bfa_nw_ioc_get_mac(struct bfa_ioc *ioc)
 static void
 bfa_ioc_recover(struct bfa_ioc *ioc)
 {
-       u16 bdf;
-
-       bdf = (ioc->pcidev.pci_slot << 8 | ioc->pcidev.pci_func << 3 |
-                                       ioc->pcidev.device_id);
-
-       pr_crit("Firmware heartbeat failure at %d", bdf);
-       BUG_ON(1);
+       pr_crit("Heart Beat of IOC has failed\n");
+       bfa_ioc_stats(ioc, ioc_hbfails);
+       bfa_fsm_send_event(ioc, IOC_E_HBFAIL);
 }
 
 static void