summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Chan <michael.chan@broadcom.com>2026-06-16 11:55:37 -0400
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2026-07-04 13:38:41 +0200
commit83613fe8ff0da7331036f1b2dca051cc36633579 (patch)
tree6e5d5f93a16240d9f6ff53641f532fda5d35657c
parent3cf0580a09d417eab41ce914a11f9cde3a121871 (diff)
downloadlinux-83613fe8ff0da7331036f1b2dca051cc36633579.tar.gz
linux-83613fe8ff0da7331036f1b2dca051cc36633579.zip
bnxt_en: Modify bnxt_disable_int_sync() to be called more than once.
[ Upstream commit 38290e37297087f7ea3ef7904b8f185d77c42976 ] In the event of a fatal firmware error, we want to disable IRQ early in the recovery sequence. This change will allow it to be called safely again as part of the normal shutdown sequence. Reviewed-by: Edwin Peer <edwin.peer@broadcom.com> Reviewed-by: Vasundhara Volam <vasundhara-v.volam@broadcom.com> Signed-off-by: Michael Chan <michael.chan@broadcom.com> Acked-by: Willem de Bruijn <willemb@google.com> Signed-off-by: Jakub Kicinski <kuba@kernel.org> Stable-dep-of: d930276f2cdd ("bnxt_en: Fix NULL pointer dereference") Signed-off-by: Sasha Levin <sashal@kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/net/ethernet/broadcom/bnxt/bnxt.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt.c b/drivers/net/ethernet/broadcom/bnxt/bnxt.c
index fd54a194a5e5..ff14c44b8f2b 100644
--- a/drivers/net/ethernet/broadcom/bnxt/bnxt.c
+++ b/drivers/net/ethernet/broadcom/bnxt/bnxt.c
@@ -4382,6 +4382,9 @@ static void bnxt_disable_int_sync(struct bnxt *bp)
{
int i;
+ if (!bp->irq_tbl)
+ return;
+
atomic_inc(&bp->intr_sem);
bnxt_disable_int(bp);