aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/vmxnet3
diff options
context:
space:
mode:
authorAlexander Gordeev <agordeev@redhat.com>2014-02-18 05:12:03 -0500
committerDavid S. Miller <davem@davemloft.net>2014-02-18 15:33:34 -0500
commitc0a1be3842c73128187a6d10623b011a8fa2dee6 (patch)
tree59b70ea2953f1f477f4f171a4ad35285af338554 /drivers/net/vmxnet3
parentb60b869d5f9f0987cf4e3fee22fb88786a281de7 (diff)
vmxnet3: Use pci_enable_msix_range() instead of pci_enable_msix()
As result of deprecation of MSI-X/MSI enablement functions pci_enable_msix() and pci_enable_msi_block() all drivers using these two interfaces need to be updated to use the new pci_enable_msi_range() and pci_enable_msix_range() interfaces. Signed-off-by: Alexander Gordeev <agordeev@redhat.com> Cc: Shreyas Bhatewara <sbhatewara@vmware.com> Cc: pv-drivers@vmware.com Cc: netdev@vger.kernel.org Cc: linux-pci@vger.kernel.org Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/vmxnet3')
-rw-r--r--drivers/net/vmxnet3/vmxnet3_drv.c47
1 files changed, 19 insertions, 28 deletions
diff --git a/drivers/net/vmxnet3/vmxnet3_drv.c b/drivers/net/vmxnet3/vmxnet3_drv.c
index 3a17797e0817..9275c8c423b1 100644
--- a/drivers/net/vmxnet3/vmxnet3_drv.c
+++ b/drivers/net/vmxnet3/vmxnet3_drv.c
@@ -2738,35 +2738,26 @@ vmxnet3_read_mac_addr(struct vmxnet3_adapter *adapter, u8 *mac)
2738static int 2738static int
2739vmxnet3_acquire_msix_vectors(struct vmxnet3_adapter *adapter, int nvec) 2739vmxnet3_acquire_msix_vectors(struct vmxnet3_adapter *adapter, int nvec)
2740{ 2740{
2741 do { 2741 int ret = pci_enable_msix_range(adapter->pdev,
2742 int err = pci_enable_msix(adapter->pdev, 2742 adapter->intr.msix_entries, nvec, nvec);
2743 adapter->intr.msix_entries, nvec);
2744 if (!err) {
2745 return nvec;
2746 } else if (err < 0) {
2747 dev_err(&adapter->netdev->dev,
2748 "Failed to enable MSI-X, error: %d\n", err);
2749 return err;
2750 } else if (err < VMXNET3_LINUX_MIN_MSIX_VECT) {
2751 dev_info(&adapter->pdev->dev,
2752 "Number of MSI-X which can be allocated "
2753 "is lower than min threshold required.\n");
2754 return -ENOSPC;
2755 } else {
2756 /* If fails to enable required number of MSI-x vectors
2757 * try enabling minimum number of vectors required.
2758 */
2759 dev_err(&adapter->netdev->dev,
2760 "Failed to enable %d MSI-X, trying %d\n",
2761 nvec, VMXNET3_LINUX_MIN_MSIX_VECT);
2762 nvec = VMXNET3_LINUX_MIN_MSIX_VECT;
2763 }
2764 } while (nvec >= VMXNET3_LINUX_MIN_MSIX_VECT);
2765 2743
2766 /* 2744 if (ret == -ENOSPC && nvec > VMXNET3_LINUX_MIN_MSIX_VECT) {
2767 * Should never get here 2745 dev_err(&adapter->netdev->dev,
2768 */ 2746 "Failed to enable %d MSI-X, trying %d\n",
2769 return -ENOSPC; 2747 nvec, VMXNET3_LINUX_MIN_MSIX_VECT);
2748
2749 ret = pci_enable_msix_range(adapter->pdev,
2750 adapter->intr.msix_entries,
2751 VMXNET3_LINUX_MIN_MSIX_VECT,
2752 VMXNET3_LINUX_MIN_MSIX_VECT);
2753 }
2754
2755 if (ret < 0) {
2756 dev_err(&adapter->netdev->dev,
2757 "Failed to enable MSI-X, error: %d\n", ret);
2758 }
2759
2760 return ret;
2770} 2761}
2771 2762
2772 2763