Message ID | 1437501571-2475-11-git-send-email-rajinikanth.pandurangan@pmcs.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On 21.7.2015 19:59, rajinikanth.pandurangan@pmcs.com wrote: > From: Rajinikanth Pandurangan <rajinikanth.pandurangan@pmcs.com> > > Description: > As pci_enable_msix() deprecated, replaced with pci_enable_msix_range() > > V3 Reviewed/commented by: > Tomas Henzl <thenzl@redhat.com> > > Changes from V3: > Uses pci_enable_msix_range() instead of pci_enable_msix_exact() > based on review comment. > > Signed-off-by: Rajinikanth Pandurangan <rajinikanth.pandurangan@pmcs.com> > --- > drivers/scsi/aacraid/comminit.c | 20 ++++++-------------- > 1 file changed, 6 insertions(+), 14 deletions(-) > > diff --git a/drivers/scsi/aacraid/comminit.c b/drivers/scsi/aacraid/comminit.c > index b4b6088..3ba6e97 100644 > --- a/drivers/scsi/aacraid/comminit.c > +++ b/drivers/scsi/aacraid/comminit.c > @@ -338,7 +338,7 @@ static int aac_comm_init(struct aac_dev * dev) > > void aac_define_int_mode(struct aac_dev *dev) > { > - int i, msi_count; > + int i, msi_count, min_msix; > > msi_count = i = 0; > /* max. vectors from GET_COMM_PREFERRED_SETTINGS */ > @@ -366,22 +366,14 @@ void aac_define_int_mode(struct aac_dev *dev) > > if (msi_count > 1 && > pci_find_capability(dev->pdev, PCI_CAP_ID_MSIX)) { > - i = pci_enable_msix(dev->pdev, > + min_msix = 8; That^ will make the pci-enable function fail on boxes with less than eight num-online-cpus -tm > + i = pci_enable_msix_range(dev->pdev, > dev->msixentry, > + min_msix, > msi_count); > - /* Check how many MSIX vectors are allocated */ > - if (i >= 0) { > + if (i > 0) { > dev->msi_enabled = 1; > - if (i) { > - msi_count = i; > - if (pci_enable_msix(dev->pdev, > - dev->msixentry, > - msi_count)) { > - dev->msi_enabled = 0; > - printk(KERN_ERR "%s%d: MSIX not supported!! Will try MSI 0x%x.\n", > - dev->name, dev->id, i); > - } > - } > + msi_count = i; > } else { > dev->msi_enabled = 0; > printk(KERN_ERR "%s%d: MSIX not supported!! Will try MSI 0x%x.\n", > -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Hello Tomas, Yes, in case of failure, we'll fall into msi. Thanks, -----Original Message----- From: Tomas Henzl [mailto:thenzl@redhat.com] Sent: Wednesday, July 22, 2015 6:56 AM To: Rajinikanth Pandurangan; jbottomley@parallels.com; linux-scsi@vger.kernel.org Cc: aacraid@pmc-sierra.com; Harry Yang; Rich Bono; Mahesh Rajashekhara; Achim Leubner; Murthy Bhat Subject: Re: [PATCH V4 10/10] [SCSI] aacraid: Replace pci_enable_msix() with pci_enable_msix_range() On 21.7.2015 19:59, rajinikanth.pandurangan@pmcs.com wrote: > From: Rajinikanth Pandurangan <rajinikanth.pandurangan@pmcs.com> > > Description: > As pci_enable_msix() deprecated, replaced with > pci_enable_msix_range() > > V3 Reviewed/commented by: > Tomas Henzl <thenzl@redhat.com> > > Changes from V3: > Uses pci_enable_msix_range() instead of pci_enable_msix_exact() based > on review comment. > > Signed-off-by: Rajinikanth Pandurangan > <rajinikanth.pandurangan@pmcs.com> > --- > drivers/scsi/aacraid/comminit.c | 20 ++++++-------------- > 1 file changed, 6 insertions(+), 14 deletions(-) > > diff --git a/drivers/scsi/aacraid/comminit.c > b/drivers/scsi/aacraid/comminit.c index b4b6088..3ba6e97 100644 > --- a/drivers/scsi/aacraid/comminit.c > +++ b/drivers/scsi/aacraid/comminit.c > @@ -338,7 +338,7 @@ static int aac_comm_init(struct aac_dev * dev) > > void aac_define_int_mode(struct aac_dev *dev) { > - int i, msi_count; > + int i, msi_count, min_msix; > > msi_count = i = 0; > /* max. vectors from GET_COMM_PREFERRED_SETTINGS */ @@ -366,22 > +366,14 @@ void aac_define_int_mode(struct aac_dev *dev) > > if (msi_count > 1 && > pci_find_capability(dev->pdev, PCI_CAP_ID_MSIX)) { > - i = pci_enable_msix(dev->pdev, > + min_msix = 8; That^ will make the pci-enable function fail on boxes with less than eight num-online-cpus -tm > + i = pci_enable_msix_range(dev->pdev, > dev->msixentry, > + min_msix, > msi_count); > - /* Check how many MSIX vectors are allocated */ > - if (i >= 0) { > + if (i > 0) { > dev->msi_enabled = 1; > - if (i) { > - msi_count = i; > - if (pci_enable_msix(dev->pdev, > - dev->msixentry, > - msi_count)) { > - dev->msi_enabled = 0; > - printk(KERN_ERR "%s%d: MSIX not supported!! Will try MSI 0x%x.\n", > - dev->name, dev->id, i); > - } > - } > + msi_count = i; > } else { > dev->msi_enabled = 0; > printk(KERN_ERR "%s%d: MSIX not supported!! Will try MSI 0x%x.\n", > -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On 22.7.2015 16:55, Rajinikanth Pandurangan wrote: > Hello Tomas, > > Yes, in case of failure, we'll fall into msi. Well ok, if you want support msi-x mode only with exactly 8 msi-x lines, that's fine... But because it creates another functional change - (before this patch also values lower than eight were allowed please split this patch into two parts. One for replacing pci_enable_msix() with pci_enable_msix_range() and the other for setting a hard limit to 8 msi-x lines. -tm > > Thanks, > -----Original Message----- > From: Tomas Henzl [mailto:thenzl@redhat.com] > Sent: Wednesday, July 22, 2015 6:56 AM > To: Rajinikanth Pandurangan; jbottomley@parallels.com; linux-scsi@vger.kernel.org > Cc: aacraid@pmc-sierra.com; Harry Yang; Rich Bono; Mahesh Rajashekhara; Achim Leubner; Murthy Bhat > Subject: Re: [PATCH V4 10/10] [SCSI] aacraid: Replace pci_enable_msix() with pci_enable_msix_range() > > On 21.7.2015 19:59, rajinikanth.pandurangan@pmcs.com wrote: >> From: Rajinikanth Pandurangan <rajinikanth.pandurangan@pmcs.com> >> >> Description: >> As pci_enable_msix() deprecated, replaced with >> pci_enable_msix_range() >> >> V3 Reviewed/commented by: >> Tomas Henzl <thenzl@redhat.com> >> >> Changes from V3: >> Uses pci_enable_msix_range() instead of pci_enable_msix_exact() based >> on review comment. >> >> Signed-off-by: Rajinikanth Pandurangan >> <rajinikanth.pandurangan@pmcs.com> >> --- >> drivers/scsi/aacraid/comminit.c | 20 ++++++-------------- >> 1 file changed, 6 insertions(+), 14 deletions(-) >> >> diff --git a/drivers/scsi/aacraid/comminit.c >> b/drivers/scsi/aacraid/comminit.c index b4b6088..3ba6e97 100644 >> --- a/drivers/scsi/aacraid/comminit.c >> +++ b/drivers/scsi/aacraid/comminit.c >> @@ -338,7 +338,7 @@ static int aac_comm_init(struct aac_dev * dev) >> >> void aac_define_int_mode(struct aac_dev *dev) { >> - int i, msi_count; >> + int i, msi_count, min_msix; >> >> msi_count = i = 0; >> /* max. vectors from GET_COMM_PREFERRED_SETTINGS */ @@ -366,22 >> +366,14 @@ void aac_define_int_mode(struct aac_dev *dev) >> >> if (msi_count > 1 && >> pci_find_capability(dev->pdev, PCI_CAP_ID_MSIX)) { >> - i = pci_enable_msix(dev->pdev, >> + min_msix = 8; > That^ will make the pci-enable function fail on boxes with less than eight num-online-cpus > > -tm > >> + i = pci_enable_msix_range(dev->pdev, >> dev->msixentry, >> + min_msix, >> msi_count); >> - /* Check how many MSIX vectors are allocated */ >> - if (i >= 0) { >> + if (i > 0) { >> dev->msi_enabled = 1; >> - if (i) { >> - msi_count = i; >> - if (pci_enable_msix(dev->pdev, >> - dev->msixentry, >> - msi_count)) { >> - dev->msi_enabled = 0; >> - printk(KERN_ERR "%s%d: MSIX not supported!! Will try MSI 0x%x.\n", >> - dev->name, dev->id, i); >> - } >> - } >> + msi_count = i; >> } else { >> dev->msi_enabled = 0; >> printk(KERN_ERR "%s%d: MSIX not supported!! Will try MSI 0x%x.\n", >> > > -- > To unsubscribe from this list: send the line "unsubscribe linux-scsi" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Ok. will follow-up with new patch. We probably lower it to 4 instead of 8 :). Thanks, -----Original Message----- From: Tomas Henzl [mailto:thenzl@redhat.com] Sent: Wednesday, July 22, 2015 8:10 AM To: Rajinikanth Pandurangan; jbottomley@parallels.com; linux-scsi@vger.kernel.org Cc: aacraid@pmc-sierra.com; Harry Yang; Rich Bono; Mahesh Rajashekhara; Achim Leubner; Murthy Bhat Subject: Re: [PATCH V4 10/10] [SCSI] aacraid: Replace pci_enable_msix() with pci_enable_msix_range() On 22.7.2015 16:55, Rajinikanth Pandurangan wrote: > Hello Tomas, > > Yes, in case of failure, we'll fall into msi. Well ok, if you want support msi-x mode only with exactly 8 msi-x lines, that's fine... But because it creates another functional change - (before this patch also values lower than eight were allowed please split this patch into two parts. One for replacing pci_enable_msix() with pci_enable_msix_range() and the other for setting a hard limit to 8 msi-x lines. -tm > > Thanks, > -----Original Message----- > From: Tomas Henzl [mailto:thenzl@redhat.com] > Sent: Wednesday, July 22, 2015 6:56 AM > To: Rajinikanth Pandurangan; jbottomley@parallels.com; > linux-scsi@vger.kernel.org > Cc: aacraid@pmc-sierra.com; Harry Yang; Rich Bono; Mahesh > Rajashekhara; Achim Leubner; Murthy Bhat > Subject: Re: [PATCH V4 10/10] [SCSI] aacraid: Replace > pci_enable_msix() with pci_enable_msix_range() > > On 21.7.2015 19:59, rajinikanth.pandurangan@pmcs.com wrote: >> From: Rajinikanth Pandurangan <rajinikanth.pandurangan@pmcs.com> >> >> Description: >> As pci_enable_msix() deprecated, replaced with >> pci_enable_msix_range() >> >> V3 Reviewed/commented by: >> Tomas Henzl <thenzl@redhat.com> >> >> Changes from V3: >> Uses pci_enable_msix_range() instead of pci_enable_msix_exact() >> based on review comment. >> >> Signed-off-by: Rajinikanth Pandurangan >> <rajinikanth.pandurangan@pmcs.com> >> --- >> drivers/scsi/aacraid/comminit.c | 20 ++++++-------------- >> 1 file changed, 6 insertions(+), 14 deletions(-) >> >> diff --git a/drivers/scsi/aacraid/comminit.c >> b/drivers/scsi/aacraid/comminit.c index b4b6088..3ba6e97 100644 >> --- a/drivers/scsi/aacraid/comminit.c >> +++ b/drivers/scsi/aacraid/comminit.c >> @@ -338,7 +338,7 @@ static int aac_comm_init(struct aac_dev * dev) >> >> void aac_define_int_mode(struct aac_dev *dev) { >> - int i, msi_count; >> + int i, msi_count, min_msix; >> >> msi_count = i = 0; >> /* max. vectors from GET_COMM_PREFERRED_SETTINGS */ @@ -366,22 >> +366,14 @@ void aac_define_int_mode(struct aac_dev *dev) >> >> if (msi_count > 1 && >> pci_find_capability(dev->pdev, PCI_CAP_ID_MSIX)) { >> - i = pci_enable_msix(dev->pdev, >> + min_msix = 8; > That^ will make the pci-enable function fail on boxes with less than > eight num-online-cpus > > -tm > >> + i = pci_enable_msix_range(dev->pdev, >> dev->msixentry, >> + min_msix, >> msi_count); >> - /* Check how many MSIX vectors are allocated */ >> - if (i >= 0) { >> + if (i > 0) { >> dev->msi_enabled = 1; >> - if (i) { >> - msi_count = i; >> - if (pci_enable_msix(dev->pdev, >> - dev->msixentry, >> - msi_count)) { >> - dev->msi_enabled = 0; >> - printk(KERN_ERR "%s%d: MSIX not supported!! Will try MSI 0x%x.\n", >> - dev->name, dev->id, i); >> - } >> - } >> + msi_count = i; >> } else { >> dev->msi_enabled = 0; >> printk(KERN_ERR "%s%d: MSIX not supported!! Will try MSI >> 0x%x.\n", >> > > -- > To unsubscribe from this list: send the line "unsubscribe linux-scsi" > in the body of a message to majordomo@vger.kernel.org More majordomo > info at http://vger.kernel.org/majordomo-info.html > -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/drivers/scsi/aacraid/comminit.c b/drivers/scsi/aacraid/comminit.c index b4b6088..3ba6e97 100644 --- a/drivers/scsi/aacraid/comminit.c +++ b/drivers/scsi/aacraid/comminit.c @@ -338,7 +338,7 @@ static int aac_comm_init(struct aac_dev * dev) void aac_define_int_mode(struct aac_dev *dev) { - int i, msi_count; + int i, msi_count, min_msix; msi_count = i = 0; /* max. vectors from GET_COMM_PREFERRED_SETTINGS */ @@ -366,22 +366,14 @@ void aac_define_int_mode(struct aac_dev *dev) if (msi_count > 1 && pci_find_capability(dev->pdev, PCI_CAP_ID_MSIX)) { - i = pci_enable_msix(dev->pdev, + min_msix = 8; + i = pci_enable_msix_range(dev->pdev, dev->msixentry, + min_msix, msi_count); - /* Check how many MSIX vectors are allocated */ - if (i >= 0) { + if (i > 0) { dev->msi_enabled = 1; - if (i) { - msi_count = i; - if (pci_enable_msix(dev->pdev, - dev->msixentry, - msi_count)) { - dev->msi_enabled = 0; - printk(KERN_ERR "%s%d: MSIX not supported!! Will try MSI 0x%x.\n", - dev->name, dev->id, i); - } - } + msi_count = i; } else { dev->msi_enabled = 0; printk(KERN_ERR "%s%d: MSIX not supported!! Will try MSI 0x%x.\n",