bnxt_en: Improve the IRQ disable sequence during shutdown.
authorMichael Chan <michael.chan@broadcom.com>
Thu, 29 Dec 2016 17:13:33 +0000 (12:13 -0500)
committerDavid S. Miller <davem@davemloft.net>
Thu, 29 Dec 2016 19:37:23 +0000 (14:37 -0500)
commit9d8bc09766f1a229b2d204c713a1cfc6c7fa1bb1
tree4b2cfefdbe9c27992038a8836944649a52ad4143
parente7b9569102995ebc26821789628eef45bd9840d8
bnxt_en: Improve the IRQ disable sequence during shutdown.

The IRQ is disabled by writing to the completion ring doorbell.  This
should be done before the hardware completion ring is freed for correctness.
The current code disables IRQs after all the completion rings are freed.

Fix it by calling bnxt_disable_int_sync() before freeing the completion
rings.  Rearrange the code to avoid forward declaration.

Signed-off-by: Michael Chan <michael.chan@broadocm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/broadcom/bnxt/bnxt.c