RE: [PATCH 13/22] megaraid: Use pci_enable_msix_range()

From: Saxena, Sumit
Date: Fri Feb 07 2014 - 06:17:52 EST




>-----Original Message-----
>From: Alexander Gordeev [mailto:agordeev@xxxxxxxxxx]
>Sent: Tuesday, February 04, 2014 4:47 PM
>To: linux-kernel@xxxxxxxxxxxxxxx
>Cc: Alexander Gordeev; DL-MegaRAID Linux; linux-scsi@xxxxxxxxxxxxxxx;
>linux-pci@xxxxxxxxxxxxxxx
>Subject: [PATCH 13/22] megaraid: Use pci_enable_msix_range()
>
>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@xxxxxxxxxx>
>Cc: Neela Syam Kolli <megaraidlinux@xxxxxxx>
>Cc: linux-scsi@xxxxxxxxxxxxxxx
>Cc: linux-pci@xxxxxxxxxxxxxxx
>---
> drivers/scsi/megaraid/megaraid_sas_base.c | 25 +++++++++++--------------
> 1 files changed, 11 insertions(+), 14 deletions(-)
>
>diff --git a/drivers/scsi/megaraid/megaraid_sas_base.c
>b/drivers/scsi/megaraid/megaraid_sas_base.c
>index 3b7ad10..90944f1 100644
>--- a/drivers/scsi/megaraid/megaraid_sas_base.c
>+++ b/drivers/scsi/megaraid/megaraid_sas_base.c
>@@ -3731,18 +3731,12 @@ static int megasas_init_fw(struct
>megasas_instance *instance)
> (unsigned int)num_online_cpus());
> for (i = 0; i < instance->msix_vectors; i++)
> instance->msixentry[i].entry = i;
>- i = pci_enable_msix(instance->pdev, instance->msixentry,
>- instance->msix_vectors);
>- if (i >= 0) {
>- if (i) {
>- if (!pci_enable_msix(instance->pdev,
>- instance->msixentry, i))
>- instance->msix_vectors = i;
>- else
>- instance->msix_vectors = 0;
>- }
>- } else
>+ i = pci_enable_msix_range(instance->pdev, instance-
>>msixentry,
>+ 1, instance->msix_vectors);
>+ if (i < 0)
> instance->msix_vectors = 0;
>+ else
>+ instance->msix_vectors = i;
>
> dev_info(&instance->pdev->dev, "[scsi%d]: FW supports"
> "<%d> MSIX vector,Online CPUs: <%d>,"
>@@ -4667,9 +4661,11 @@ megasas_resume(struct pci_dev *pdev)
> goto fail_ready_state;
>
> /* Now re-enable MSI-X */
>- if (instance->msix_vectors)
>- pci_enable_msix(instance->pdev, instance->msixentry,
>- instance->msix_vectors);
>+ if (instance->msix_vectors &&
>+ pci_enable_msix_range(instance->pdev, instance->msixentry,
>+ instance->msix_vectors,
>+ instance->msix_vectors) < 0)
>+ goto fail_reenable_msix;
>
> switch (instance->pdev->device) {
> case PCI_DEVICE_ID_LSI_FUSION:
>@@ -4756,6 +4752,7 @@ fail_init_mfi:
>
> fail_set_dma_mask:
> fail_ready_state:
>+fail_reenable_msix:
>
> pci_disable_device(pdev);

Acked-by: Sumit Saxena <sumit.saxena@xxxxxxx>

Sumit
>
>--
>1.7.7.6
>

--
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/