On some architectures (e.g. ARM64) if the device is behind an IOMMU, and is being mapped by VFIO, it is necessary to also add mappings for MSI translation register for interrupts to work. This series implements the necessary API to do this, and makes use of this API for GICv3 ITS on ARM64. v1 => v2: - Adde dependency on CONFIG_GENERIC_MSI_IRQ_DOMAIN in some parts of the code, should fix build without this option Pavel Fedin (3): vfio: Introduce map and unmap operations gicv3, its: Introduce VFIO map and unmap operations vfio: Introduce generic MSI mapping operations drivers/irqchip/irq-gic-v3-its.c | 31 ++++++++++ drivers/vfio/pci/vfio_pci_intrs.c | 11 ++++ drivers/vfio/vfio.c | 116 +++++++++++++++++++++++++++++++++++++ drivers/vfio/vfio_iommu_type1.c | 29 ++++++++++ include/linux/irqchip/arm-gic-v3.h | 2 + include/linux/msi.h | 12 ++++ include/linux/vfio.h | 17 +++++- 7 files changed, 217 insertions(+), 1 deletion(-) -- 2.4.4 -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html