diff options
author | Michael Chan <michael.chan@broadcom.com> | 2021-01-25 02:08:18 -0500 |
---|---|---|
committer | Jakub Kicinski <kuba@kernel.org> | 2021-01-25 19:20:04 -0800 |
commit | 38290e37297087f7ea3ef7904b8f185d77c42976 (patch) | |
tree | 8efdeea6e73fb9792c71ca064fe530eea4bfa4cf | |
parent | e340a5c4fbdde20fec8c16b83bce386aaad6b6eb (diff) |
bnxt_en: Modify bnxt_disable_int_sync() to be called more than once.
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>
-rw-r--r-- | drivers/net/ethernet/broadcom/bnxt/bnxt.c | 3 |
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 83846b50042a..80dab4e622ab 100644 --- a/drivers/net/ethernet/broadcom/bnxt/bnxt.c +++ b/drivers/net/ethernet/broadcom/bnxt/bnxt.c @@ -4280,6 +4280,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); |