vfio: Use pci_enable_msi_range() and pci_enable_msix_range()
pci_enable_msix() and pci_enable_msi_block() have been deprecated; use pci_enable_msix_range() and pci_enable_msi_range() instead. [bhelgaas: changelog] Signed-off-by: Alexander Gordeev <agordeev@redhat.com> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> Acked-by: Alex Williamson <alex.williamson@redhat.com>
This commit is contained in:
parent
fc061d969f
commit
94cccde648
1 changed files with 8 additions and 4 deletions
|
@ -482,15 +482,19 @@ static int vfio_msi_enable(struct vfio_pci_device *vdev, int nvec, bool msix)
|
|||
for (i = 0; i < nvec; i++)
|
||||
vdev->msix[i].entry = i;
|
||||
|
||||
ret = pci_enable_msix(pdev, vdev->msix, nvec);
|
||||
if (ret) {
|
||||
ret = pci_enable_msix_range(pdev, vdev->msix, 1, nvec);
|
||||
if (ret < nvec) {
|
||||
if (ret > 0)
|
||||
pci_disable_msix(pdev);
|
||||
kfree(vdev->msix);
|
||||
kfree(vdev->ctx);
|
||||
return ret;
|
||||
}
|
||||
} else {
|
||||
ret = pci_enable_msi_block(pdev, nvec);
|
||||
if (ret) {
|
||||
ret = pci_enable_msi_range(pdev, 1, nvec);
|
||||
if (ret < nvec) {
|
||||
if (ret > 0)
|
||||
pci_disable_msi(pdev);
|
||||
kfree(vdev->ctx);
|
||||
return ret;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue