diff options
-rw-r--r-- | drivers/net/ethernet/broadcom/tg3.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/drivers/net/ethernet/broadcom/tg3.c b/drivers/net/ethernet/broadcom/tg3.c index 3167ed6593b0..6e5e7c0ffbd7 100644 --- a/drivers/net/ethernet/broadcom/tg3.c +++ b/drivers/net/ethernet/broadcom/tg3.c | |||
@@ -11362,12 +11362,10 @@ static bool tg3_enable_msix(struct tg3 *tp) | |||
11362 | msix_ent[i].vector = 0; | 11362 | msix_ent[i].vector = 0; |
11363 | } | 11363 | } |
11364 | 11364 | ||
11365 | rc = pci_enable_msix(tp->pdev, msix_ent, tp->irq_cnt); | 11365 | rc = pci_enable_msix_range(tp->pdev, msix_ent, 1, tp->irq_cnt); |
11366 | if (rc < 0) { | 11366 | if (rc < 0) { |
11367 | return false; | 11367 | return false; |
11368 | } else if (rc != 0) { | 11368 | } else if (rc < tp->irq_cnt) { |
11369 | if (pci_enable_msix(tp->pdev, msix_ent, rc)) | ||
11370 | return false; | ||
11371 | netdev_notice(tp->dev, "Requested %d MSI-X vectors, received %d\n", | 11369 | netdev_notice(tp->dev, "Requested %d MSI-X vectors, received %d\n", |
11372 | tp->irq_cnt, rc); | 11370 | tp->irq_cnt, rc); |
11373 | tp->irq_cnt = rc; | 11371 | tp->irq_cnt = rc; |