RE: [PATCH 05/16] megaraid: clean up unnecessary MSI/MSI-X capability find

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




>-----Original Message-----
>From: Yijing Wang [mailto:wangyijing@xxxxxxxxxx]
>Sent: Thursday, August 08, 2013 6:38 PM
>To: James E.J. Bottomley
>Cc: Hanjun Guo; jiang.liu@xxxxxxxxxx; Yijing Wang; DL-MegaRAID Linux;
>linux-scsi@xxxxxxxxxxxxxxx
>Subject: [PATCH 05/16] megaraid: clean up unnecessary MSI/MSI-X
>capability find
>
>PCI core will initialize device MSI/MSI-X capability in
>pci_msi_init_pci_dev(). So device driver should use pci_dev-
>>msi_cap/msix_cap to determine whether the device support MSI/MSI-X
>instead of using pci_find_capability(pci_dev, PCI_CAP_ID_MSI/MSIX).
>Access to PCIe device config space again will consume more time.
>
>Signed-off-by: Yijing Wang <wangyijing@xxxxxxxxxx>
>Cc: Neela Syam Kolli <megaraidlinux@xxxxxxx>
>Cc: "James E.J. Bottomley" <JBottomley@xxxxxxxxxxxxx>
>Cc: linux-scsi@xxxxxxxxxxxxxxx
>---
> drivers/scsi/megaraid/megaraid_sas_base.c |    9 ++++-----
> 1 files changed, 4 insertions(+), 5 deletions(-)
>
>diff --git a/drivers/scsi/megaraid/megaraid_sas_base.c
>b/drivers/scsi/megaraid/megaraid_sas_base.c
>index 0177295..ad8fc44 100644
>--- a/drivers/scsi/megaraid/megaraid_sas_base.c
>+++ b/drivers/scsi/megaraid/megaraid_sas_base.c
>@@ -4072,21 +4072,20 @@ fail_set_dma_mask:
> static int megasas_probe_one(struct pci_dev *pdev,
> 			     const struct pci_device_id *id)  {
>-	int rval, pos, i, j;
>+	int rval, i, j;
> 	struct Scsi_Host *host;
> 	struct megasas_instance *instance;
> 	u16 control = 0;
>
> 	/* Reset MSI-X in the kdump kernel */
> 	if (reset_devices) {
>-		pos = pci_find_capability(pdev, PCI_CAP_ID_MSIX);
>-		if (pos) {
>-			pci_read_config_word(pdev, pos + PCI_MSIX_FLAGS,
>+		if (pdev->msix_cap) {
>+			pci_read_config_word(pdev, pdev->msix_cap +
>PCI_MSIX_FLAGS,
> 					     &control);
> 			if (control & PCI_MSIX_FLAGS_ENABLE) {
> 				dev_info(&pdev->dev, "resetting MSI-X\n");
> 				pci_write_config_word(pdev,
>-						      pos + PCI_MSIX_FLAGS,
>+						      pdev->msix_cap +
>PCI_MSIX_FLAGS,
> 						      control &
> 						      ~PCI_MSIX_FLAGS_ENABLE);
> 			}
>--
>1.7.1
>
>
Acked-by: Sumit Saxena <sumit.saxena@xxxxxxx>


Sumit


--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]
  Powered by Linux