Skip to content

Commit 068e8a3

Browse files
jdelvaredavem330
authored andcommitted
e1000e: Simplify MSI interrupt testing
The code is quite convoluted, simplify it. This also avoids calling e1000_request_irq() without testing the value it returned, which was bad. Signed-off-by: Jean Delvare <jdelvare@suse.de> Cc: Bruce Allan <bruce.w.allan@intel.com> Cc: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Acked-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
1 parent bc0ed0b commit 068e8a3

File tree

1 file changed

+4
-25
lines changed

1 file changed

+4
-25
lines changed

drivers/net/e1000e/netdev.c

Lines changed: 4 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -3412,22 +3412,16 @@ static int e1000_test_msi_interrupt(struct e1000_adapter *adapter)
34123412

34133413
if (adapter->flags & FLAG_MSI_TEST_FAILED) {
34143414
adapter->int_mode = E1000E_INT_MODE_LEGACY;
3415-
err = -EIO;
3416-
e_info("MSI interrupt test failed!\n");
3417-
}
3415+
e_info("MSI interrupt test failed, using legacy interrupt.\n");
3416+
} else
3417+
e_dbg("MSI interrupt test succeeded!\n");
34183418

34193419
free_irq(adapter->pdev->irq, netdev);
34203420
pci_disable_msi(adapter->pdev);
34213421

3422-
if (err == -EIO)
3423-
goto msi_test_failed;
3424-
3425-
/* okay so the test worked, restore settings */
3426-
e_dbg("MSI interrupt test succeeded!\n");
34273422
msi_test_failed:
34283423
e1000e_set_interrupt_capability(adapter);
3429-
e1000_request_irq(adapter);
3430-
return err;
3424+
return e1000_request_irq(adapter);
34313425
}
34323426

34333427
/**
@@ -3459,21 +3453,6 @@ static int e1000_test_msi(struct e1000_adapter *adapter)
34593453
pci_write_config_word(adapter->pdev, PCI_COMMAND, pci_cmd);
34603454
}
34613455

3462-
/* success ! */
3463-
if (!err)
3464-
return 0;
3465-
3466-
/* EIO means MSI test failed */
3467-
if (err != -EIO)
3468-
return err;
3469-
3470-
/* back to INTx mode */
3471-
e_warn("MSI interrupt test failed, using legacy interrupt.\n");
3472-
3473-
e1000_free_irq(adapter);
3474-
3475-
err = e1000_request_irq(adapter);
3476-
34773456
return err;
34783457
}
34793458

0 commit comments

Comments
 (0)