[PATCH] bus/pci: fix automatic interrupt type selection

priikone at iki.fi priikone at iki.fi
Fri Jun 20 13:47:17 CEST 2025


Check if kernel returns 0 interrupt vectors and try another interrupt
type in that case.  Failing to check the vector count can select an
interrupt type that's unusable.

Signed-off-by: Pekka Riikonen <priikone at iki.fi>
---
  drivers/bus/pci/linux/pci_vfio.c | 4 ++++
  1 file changed, 4 insertions(+)

diff --git a/drivers/bus/pci/linux/pci_vfio.c 
b/drivers/bus/pci/linux/pci_vfio.c
index 5317170231..02e7d7e40b 100644
--- a/drivers/bus/pci/linux/pci_vfio.c
+++ b/drivers/bus/pci/linux/pci_vfio.c
@@ -237,6 +237,10 @@ pci_vfio_setup_interrupts(struct rte_pci_device 
*dev, int vfio_dev_fd)
                                 continue;
                 }

+               /* If no vectors, try another one */
+               if (irq.count == 0)
+                       continue;
+
                 /* Reallocate the efds and elist fields of intr_handle 
based
                  * on PCI device MSIX size.
                  */
--
2.34.1


More information about the dev mailing list