diff options
author | Venkat Duvvuru <venkatkumar.duvvuru@broadcom.com> | 2018-03-09 23:46:09 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2018-03-12 10:58:05 -0400 |
commit | 1a037782e79047ec3386d8ba94c103cbdfb851d0 (patch) | |
tree | e3a784614630590eb551d257cc7945d34cfe2a1c /kernel/fail_function.c | |
parent | 6ae777eab2f53b50d84a5d75a48d2d149f787da8 (diff) | |
download | linux-1a037782e79047ec3386d8ba94c103cbdfb851d0.tar.gz linux-1a037782e79047ec3386d8ba94c103cbdfb851d0.tar.bz2 linux-1a037782e79047ec3386d8ba94c103cbdfb851d0.zip |
bnxt_en: close & open NIC, only when the interface is in running state.
bnxt_restore_pf_fw_resources routine frees PF resources by calling
close_nic and allocates the resources back, by doing open_nic. However,
this is not needed, if the PF is already in closed state.
This bug causes the driver to call open the device and call request_irq()
when it is not needed. Ultimately, pci_disable_msix() will crash
when bnxt_en is unloaded.
This patch fixes the problem by skipping __bnxt_close_nic and
__bnxt_open_nic inside bnxt_restore_pf_fw_resources routine, if the
interface is not running.
Fixes: 80fcaf46c092 ("bnxt_en: Restore MSIX after disabling SRIOV.")
Signed-off-by: Venkat Duvvuru <venkatkumar.duvvuru@broadcom.com>
Signed-off-by: Michael Chan <michael.chan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'kernel/fail_function.c')
0 files changed, 0 insertions, 0 deletions