Skip to content

Commit 7e4dcc1

Browse files
mawilli1anguy11
authored andcommitted
iavf: restore MSI state on reset
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: 5eae00c ("i40evf: main driver core") Signed-off-by: Mitch Williams <[email protected]> Tested-by: George Kuruvinakunnel <[email protected]> Signed-off-by: Tony Nguyen <[email protected]>
1 parent 3968e3c commit 7e4dcc1

File tree

1 file changed

+1
-0
lines changed

1 file changed

+1
-0
lines changed

drivers/net/ethernet/intel/iavf/iavf_main.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2248,6 +2248,7 @@ static void iavf_reset_task(struct work_struct *work)
22482248
}
22492249

22502250
pci_set_master(adapter->pdev);
2251+
pci_restore_msi_state(adapter->pdev);
22512252

22522253
if (i == IAVF_RESET_WAIT_COMPLETE_COUNT) {
22532254
dev_err(&adapter->pdev->dev, "Reset never finished (%x)\n",

0 commit comments

Comments
 (0)