[PATCH v2 4/4] ntb: Use pci_enable_msix_range() instead of pci_enable_msix()
From: Alexander Gordeev
Date: Tue Mar 11 2014 - 11:58:46 EST
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() or pci_enable_msi_exact()
and pci_enable_msix_range() or pci_enable_msix_exact()
interfaces.
Signed-off-by: Alexander Gordeev <agordeev@xxxxxxxxxx>
Cc: Jon Mason <jon.mason@xxxxxxxxx>
Cc: linux-pci@xxxxxxxxxxxxxxx
---
drivers/ntb/ntb_hw.c | 20 +++++---------------
1 files changed, 5 insertions(+), 15 deletions(-)
diff --git a/drivers/ntb/ntb_hw.c b/drivers/ntb/ntb_hw.c
index 1f8decd..ff5c0a3 100644
--- a/drivers/ntb/ntb_hw.c
+++ b/drivers/ntb/ntb_hw.c
@@ -1088,11 +1088,9 @@ static int ntb_setup_snb_msix(struct ntb_device *ndev, int msix_entries)
if (msix_entries < ndev->limits.msix_cnt)
return -ENOSPC;
- rc = pci_enable_msix(pdev, ndev->msix_entries, msix_entries);
+ rc = pci_enable_msix_exact(pdev, ndev->msix_entries, msix_entries);
if (rc < 0)
return rc;
- else if (rc > 0)
- return -ENOSPC;
for (i = 0; i < msix_entries; i++) {
msix = &ndev->msix_entries[i];
@@ -1138,18 +1136,10 @@ static int ntb_setup_bwd_msix(struct ntb_device *ndev, int msix_entries)
struct msix_entry *msix;
int rc, i;
-retry:
- rc = pci_enable_msix(pdev, ndev->msix_entries, msix_entries);
- if (rc < 0)
- return rc;
- else if (rc > 0) {
- dev_warn(&pdev->dev,
- "Only %d MSI-X vectors. "
- "Limiting the number of queues to that number.\n",
- rc);
- msix_entries = rc;
- goto retry;
- }
+ msix_entries = pci_enable_msix_range(pdev, ndev->msix_entries,
+ 1, msix_entries);
+ if (msix_entries < 0)
+ return msix_entries;
for (i = 0; i < msix_entries; i++) {
msix = &ndev->msix_entries[i];
--
1.7.7.6
--
Regards,
Alexander Gordeev
agordeev@xxxxxxxxxx
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/