From: Alvin Zhang <alvinx.zh...@intel.com> When mapping PCI bar resources around the MSI-X table, if the size of the first part is 0, the second part should also be mapped if its size is not 0.
Fixes: e200535c1ca3 ("mem: drop mapping API workaround") Cc: sta...@dpdk.org Signed-off-by: Alvin Zhang <alvinx.zh...@intel.com> --- drivers/bus/pci/linux/pci_vfio.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/bus/pci/linux/pci_vfio.c b/drivers/bus/pci/linux/pci_vfio.c index 34b5da8..37bfda8 100644 --- a/drivers/bus/pci/linux/pci_vfio.c +++ b/drivers/bus/pci/linux/pci_vfio.c @@ -565,7 +565,7 @@ } /* if there's a second part, try to map it */ - if (map_addr != NULL + if ((map_addr != NULL || memreg[0].size == 0) && memreg[1].offset && memreg[1].size) { void *second_addr = RTE_PTR_ADD(bar_addr, (uintptr_t)(memreg[1].offset - -- 1.8.3.1