In the function rte_pci_ioport_map, if uio_pci_generic is used on X86 platform, pci_ioport_map() is invoked, the operation ev->intr_handle.type = RTE_INTR_HANDLE_UNKNOWN; is execused directly, it causes the wrong assignment for uio_pci_generic, the patch fixes it.
Fixes: 756ce64b1ecd ("eal: introduce PCI ioport API") Cc: sta...@dpdk.org Signed-off-by: Zhiyong Yang <zhiyong.y...@intel.com> --- drivers/bus/pci/linux/pci.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/bus/pci/linux/pci.c b/drivers/bus/pci/linux/pci.c index 5da6728fb..8ff7dbfd7 100644 --- a/drivers/bus/pci/linux/pci.c +++ b/drivers/bus/pci/linux/pci.c @@ -723,7 +723,9 @@ pci_ioport_map(struct rte_pci_device *dev, int bar __rte_unused, if (!found) return -1; - dev->intr_handle.type = RTE_INTR_HANDLE_UNKNOWN; + if (dev->kdrv == RTE_KDRV_NONE) + dev->intr_handle.type = RTE_INTR_HANDLE_UNKNOWN; + p->base = start; RTE_LOG(DEBUG, EAL, "PCI Port IO found start=0x%x\n", start); -- 2.13.3