linux_dsm_epyc7002/drivers/net/ethernet/broadcom
Michael Chan 72bb72b0d9 tg3: Prevent system hang during repeated EEH errors.
The current tg3 code assumes the pci_error_handlers to be always called
in sequence.  In particular, during ->error_detected(), NAPI is disabled
and the device is shutdown.  The device is later reset and NAPI
re-enabled in ->slot_reset() and ->resume().

In EEH, if more than 6 errors are detected in a hour, only
->error_detected() will be called.  This will leave the driver in an
inconsistent state as NAPI is disabled but netif_running state is still
true.  When the device is later closed, we'll try to disable NAPI again
and it will loop forever.

We fix this by closing the device if we encounter any error conditions
during the normal sequence of the pci_error_handlers.

v2: Remove the changes in tg3_io_resume() based on Benjamin Poirier's
    feedback.

Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: Nithin Nayak Sujir <nsujir@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2013-06-17 16:02:19 -07:00
..
bnx2x Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2013-06-05 16:37:30 -07:00
b44.c Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux into mips-for-linux-next 2013-02-22 10:07:30 +01:00
b44.h b44: add 64 bit stats 2012-07-18 09:29:43 -07:00
bcm63xx_enet.c bcm63xx_enet: add support Broadcom BCM6345 Ethernet 2013-06-13 17:22:08 -07:00
bcm63xx_enet.h bcm63xx_enet: add support Broadcom BCM6345 Ethernet 2013-06-13 17:22:08 -07:00
bgmac.c drivers:net: Remove unnecessary OOM messages after netdev_alloc_skb 2013-03-09 16:09:19 -05:00
bgmac.h bgmac: register MII bus 2013-03-07 16:28:26 -05:00
bnx2_fw.h broadcom: Move the Broadcom drivers 2011-08-10 19:54:39 -07:00
bnx2.c net/ethernet/broadcom/bnx2: Use module_pci_driver to register driver 2013-05-22 14:35:04 -07:00
bnx2.h cnic, bnx2x, bnx2: Simplify cnic probing. 2012-12-07 12:44:02 -05:00
cnic_defs.h bnx2x,cnic: use FW 7.8.2 2012-10-01 16:43:17 -04:00
cnic_if.h bnx2x, bnx2fc: Use per port max exchange resources 2013-04-25 04:06:46 -04:00
cnic.c net: pass info struct via netdevice notifier 2013-05-28 13:11:01 -07:00
cnic.h cnic: Include bnx2x.h 2012-12-07 12:44:02 -05:00
Kconfig bgmac: driver for GBit MAC core on BCMA bus 2013-01-09 23:37:03 -08:00
Makefile bgmac: driver for GBit MAC core on BCMA bus 2013-01-09 23:37:03 -08:00
sb1250-mac.c net: ethernet: use platform_{get,set}_drvdata() 2013-05-25 21:27:58 -07:00
tg3.c tg3: Prevent system hang during repeated EEH errors. 2013-06-17 16:02:19 -07:00
tg3.h Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2013-06-05 16:37:30 -07:00