diff options
author | George Shuklin <george.shuklin@gmail.com> | 2023-11-03 13:50:29 +0200 |
---|---|---|
committer | Jakub Kicinski <kuba@kernel.org> | 2023-11-06 17:23:42 -0800 |
commit | 9fc3bc7643341dc5be7d269f3d3dbe441d8d7ac3 (patch) | |
tree | 19f2ca41a212a9e02db4aa412689ceb5c020514d /drivers/net/ethernet | |
parent | c1ed833e0b3b7b9edc82b97b73b2a8a10ceab241 (diff) | |
download | lwn-9fc3bc7643341dc5be7d269f3d3dbe441d8d7ac3.tar.gz lwn-9fc3bc7643341dc5be7d269f3d3dbe441d8d7ac3.zip |
tg3: power down device only on SYSTEM_POWER_OFF
Dell R650xs servers hangs on reboot if tg3 driver calls
tg3_power_down.
This happens only if network adapters (BCM5720 for R650xs) were
initialized using SNP (e.g. by booting ipxe.efi).
The actual problem is on Dell side, but this fix allows servers
to come back alive after reboot.
Signed-off-by: George Shuklin <george.shuklin@gmail.com>
Fixes: 2ca1c94ce0b6 ("tg3: Disable tg3 device on system reboot to avoid triggering AER")
Reviewed-by: Pavan Chebbi <pavan.chebbi@broadcom.com>
Reviewed-by: Michael Chan <michael.chan@broadcom.com>
Link: https://lore.kernel.org/r/20231103115029.83273-1-george.shuklin@gmail.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'drivers/net/ethernet')
-rw-r--r-- | drivers/net/ethernet/broadcom/tg3.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/net/ethernet/broadcom/tg3.c b/drivers/net/ethernet/broadcom/tg3.c index 5665d0c3668f..9a8d87fe25ff 100644 --- a/drivers/net/ethernet/broadcom/tg3.c +++ b/drivers/net/ethernet/broadcom/tg3.c @@ -18127,7 +18127,8 @@ static void tg3_shutdown(struct pci_dev *pdev) if (netif_running(dev)) dev_close(dev); - tg3_power_down(tp); + if (system_state == SYSTEM_POWER_OFF) + tg3_power_down(tp); rtnl_unlock(); |