iavf: restore MSI state on reset
commit7e4dcc1396upstream. If the PF experiences an FLR, the VF's MSI and MSI-X configuration will be conveniently and silently removed in the process. When this happens, reset recovery will appear to complete normally but no traffic will pass. The netdev watchdog will helpfully notify everyone of this issue. To prevent such public embarrassment, restore MSI configuration at every reset. For normal resets, this will do no harm, but for VF resets resulting from a PF FLR, this will keep the VF working. Fixes:5eae00c57f("i40evf: main driver core") Signed-off-by: Mitch Williams <mitch.a.williams@intel.com> Tested-by: George Kuruvinakunnel <george.kuruvinakunnel@intel.com> Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
32a329b731
commit
aada0b3f33
1 changed files with 1 additions and 0 deletions
|
|
@ -2139,6 +2139,7 @@ static void iavf_reset_task(struct work_struct *work)
|
|||
}
|
||||
|
||||
pci_set_master(adapter->pdev);
|
||||
pci_restore_msi_state(adapter->pdev);
|
||||
|
||||
if (i == IAVF_RESET_WAIT_COMPLETE_COUNT) {
|
||||
dev_err(&adapter->pdev->dev, "Reset never finished (%x)\n",
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue