]> www.infradead.org Git - users/jedix/linux-maple.git/commit
bnxt_en: Restore MSIX after disabling SRIOV.
authorMichael Chan <michael.chan@broadcom.com>
Wed, 17 Jan 2018 08:21:05 +0000 (03:21 -0500)
committerJack Vogel <jack.vogel@oracle.com>
Fri, 9 Mar 2018 05:04:38 +0000 (21:04 -0800)
commit8096081c722f365078e841330fb5b5ab8a7716af
treee37b5021c8ba56f8eaa8d342b6fe1a26f03fd956
parentd108f8b4fce4c76b00a0cb4f8f54749e6d306dfb
bnxt_en: Restore MSIX after disabling SRIOV.

Orabug: 2764835527648339

After SRIOV has been enabled and disabled, the MSIX vectors assigned to
the VFs have to be re-initialized.  Otherwise they cannot be re-used by
the PF.  For example, increasing the number of PF rings after disabling
SRIOV may fail if the PF uses MSIX vectors previously assigned to the VFs.

To fix this, we add logic in bnxt_restore_pf_fw_resources() to close the
NIC, clear and re-init MSIX, and re-open the NIC.

Signed-off-by: Michael Chan <michael.chan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
(cherry picked from commit 80fcaf46c09262a71f32bb577c976814c922f864)
Signed-off-by: Brian Maly <brian.maly@oracle.com>
Reviewed-by: Jack Vogel <jack.vogel@oracle.com>
Conflicts:
drivers/net/ethernet/broadcom/bnxt/bnxt.h
drivers/net/ethernet/broadcom/bnxt/bnxt.c
drivers/net/ethernet/broadcom/bnxt/bnxt.h