After the introduction of gicv2m, This series adds missing pieces to run VIRTIO-PCI with vhost back-end on ARM. It is proposed to use the kvm_gsi_direct_mapping modality that sets the irqfd gsi to the MSI data value. With that trick there is no need to create a KVM MSI routing entry featuring a different gsi. The only adaptation needed for ARM consists in adding an architecture specific function that converts the MSI data field into the actual gsi index: there is an offset of 32 between the MSI data content (SPI ID) and the SPI index that is passed to KVM_IRQFD ioctl. Once this is done we can set the requested flags to enable vhost: kvm_gsi_direct_mapping, kvm_msi_via_irqfd_allowed. This was tested on XGene, on top of Christoffer's series, [PATCH 0/3] Add support for for GICv2m and MSIs to arm-virt (https://lists.gnu.org/archive/html/qemu-devel/2015-04/msg00881.html) Best Regards Eric Eric Auger (2): kvm: introduce kvm_arch_msi_data_to_gsi arm_gicv2m: set kvm_gsi_direct_mapping and kvm_msi_via_irqfd_allowed hw/intc/arm_gicv2m.c | 2 ++ include/sysemu/kvm.h | 2 ++ kvm-all.c | 2 +- target-arm/kvm.c | 5 +++++ target-i386/kvm.c | 5 +++++ target-mips/kvm.c | 5 +++++ target-ppc/kvm.c | 5 +++++ target-s390x/kvm.c | 5 +++++ 8 files changed, 30 insertions(+), 1 deletion(-) -- 1.8.3.2 _______________________________________________ kvmarm mailing list kvmarm@xxxxxxxxxxxxxxxxxxxxx https://lists.cs.columbia.edu/mailman/listinfo/kvmarm