Message ID | 1392804931-30671-9-git-send-email-agordeev@redhat.com (mailing list archive) |
---|---|
State | New, archived |
Delegated to: | Bjorn Helgaas |
Headers | show |
Alexander Gordeev <agordeev@redhat.com> writes: > As result 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: Rusty Russell <rusty@rustcorp.com.au> > Cc: "Michael S. Tsirkin" <mst@redhat.com> > Cc: virtio-dev@lists.oasis-open.org > Cc: virtualization@lists.linux-foundation.org > Cc: linux-pci@vger.kernel.org > --- > drivers/virtio/virtio_pci.c | 8 +++----- > 1 files changed, 3 insertions(+), 5 deletions(-) > > diff --git a/drivers/virtio/virtio_pci.c b/drivers/virtio/virtio_pci.c > index a416f9b..dea042c 100644 > --- a/drivers/virtio/virtio_pci.c > +++ b/drivers/virtio/virtio_pci.c > @@ -333,11 +333,9 @@ static int vp_request_msix_vectors(struct virtio_device *vdev, int nvectors, > for (i = 0; i < nvectors; ++i) > vp_dev->msix_entries[i].entry = i; > > - /* pci_enable_msix returns positive if we can't get this many. */ > - err = pci_enable_msix(vp_dev->pci_dev, vp_dev->msix_entries, nvectors); > - if (err > 0) > - err = -ENOSPC; > - if (err) > + err = pci_enable_msix_range(vp_dev->pci_dev, > + vp_dev->msix_entries, nvectors, nvectors); > + if (err < 0) > goto error; > vp_dev->msix_enabled = 1; I've put this in my pending queue, but in case someone else wants to take it: Acked-by: Rusty Russell <rusty@rustcorp.com.au> Cheers, Rusty. -- To unsubscribe from this list: send the line "unsubscribe linux-pci" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Wed, Feb 19, 2014 at 11:15:29AM +0100, Alexander Gordeev wrote: > As result 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: Rusty Russell <rusty@rustcorp.com.au> > Cc: "Michael S. Tsirkin" <mst@redhat.com> > Cc: virtio-dev@lists.oasis-open.org > Cc: virtualization@lists.linux-foundation.org > Cc: linux-pci@vger.kernel.org Acked-by: Michael S. Tsirkin <mst@redhat.com> > --- > drivers/virtio/virtio_pci.c | 8 +++----- > 1 files changed, 3 insertions(+), 5 deletions(-) > > diff --git a/drivers/virtio/virtio_pci.c b/drivers/virtio/virtio_pci.c > index a416f9b..dea042c 100644 > --- a/drivers/virtio/virtio_pci.c > +++ b/drivers/virtio/virtio_pci.c > @@ -333,11 +333,9 @@ static int vp_request_msix_vectors(struct virtio_device *vdev, int nvectors, > for (i = 0; i < nvectors; ++i) > vp_dev->msix_entries[i].entry = i; > > - /* pci_enable_msix returns positive if we can't get this many. */ > - err = pci_enable_msix(vp_dev->pci_dev, vp_dev->msix_entries, nvectors); > - if (err > 0) > - err = -ENOSPC; > - if (err) > + err = pci_enable_msix_range(vp_dev->pci_dev, > + vp_dev->msix_entries, nvectors, nvectors); > + if (err < 0) > goto error; > vp_dev->msix_enabled = 1; > > -- > 1.7.7.6 -- To unsubscribe from this list: send the line "unsubscribe linux-pci" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Hi Rusty et al, Based on recently accepted to the mainline pci_enable_msix_exact() function, I am sending a updated version of the patch. Please, let me know if it does not work for you and you need and incremental update from the previous version. Thanks!
diff --git a/drivers/virtio/virtio_pci.c b/drivers/virtio/virtio_pci.c index a416f9b..dea042c 100644 --- a/drivers/virtio/virtio_pci.c +++ b/drivers/virtio/virtio_pci.c @@ -333,11 +333,9 @@ static int vp_request_msix_vectors(struct virtio_device *vdev, int nvectors, for (i = 0; i < nvectors; ++i) vp_dev->msix_entries[i].entry = i; - /* pci_enable_msix returns positive if we can't get this many. */ - err = pci_enable_msix(vp_dev->pci_dev, vp_dev->msix_entries, nvectors); - if (err > 0) - err = -ENOSPC; - if (err) + err = pci_enable_msix_range(vp_dev->pci_dev, + vp_dev->msix_entries, nvectors, nvectors); + if (err < 0) goto error; vp_dev->msix_enabled = 1;
As result 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: Rusty Russell <rusty@rustcorp.com.au> Cc: "Michael S. Tsirkin" <mst@redhat.com> Cc: virtio-dev@lists.oasis-open.org Cc: virtualization@lists.linux-foundation.org Cc: linux-pci@vger.kernel.org --- drivers/virtio/virtio_pci.c | 8 +++----- 1 files changed, 3 insertions(+), 5 deletions(-)