qemu/hw/i386
Peter Xu 8b5ed7dffa intel_iommu: add support for split irqchip
In split irqchip mode, IOAPIC is working in user space, only update
kernel irq routes when entry changed. When IR is enabled, we directly
update the kernel with translated messages. It works just like a kernel
cache for the remapping entries.

Since KVM irqfd is using kernel gsi routes to deliver interrupts, as
long as we can support split irqchip, we will support irqfd as
well. Also, since kernel gsi routes will cache translated interrupts,
irqfd delivery will not suffer from any performance impact due to IR.

And, since we supported irqfd, vhost devices will be able to work
seamlessly with IR now. Logically this should contain both vhost-net and
vhost-user case.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
[move trace-events lines into target-i386/trace-events]
Signed-off-by: Peter Xu <peterx@redhat.com>
Reviewed-by: Paolo Bonzini <pbonzini@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
2016-07-21 20:43:49 +03:00
..
kvm Use #include "..." for our own headers, <...> for others 2016-07-12 16:19:16 +02:00
xen include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
acpi-build.c acpi: add DMAR scope definition for root IOAPIC 2016-07-20 19:30:27 +03:00
acpi-build.h Use scripts/clean-includes to drop redundant qemu/typedefs.h 2016-03-22 22:20:16 +01:00
intel_iommu_internal.h intel_iommu: Add support for PCI MSI remap 2016-07-20 19:31:04 +03:00
intel_iommu.c intel_iommu: add support for split irqchip 2016-07-21 20:43:49 +03:00
kvmvapic.c cpu-exec: Rename cpu_resume_from_signal() to cpu_loop_exit_noexc() 2016-06-09 15:55:02 +01:00
Makefile.objs x86-iommu: introduce parent class 2016-07-20 19:30:27 +03:00
multiboot.c hw: explicitly include qemu-common.h and cpu.h 2016-03-22 22:20:17 +01:00
multiboot.h
pc_piix.c xen: fix ram init regression 2016-07-04 14:50:00 +03:00
pc_q35.c hw/iommu: enable iommu with -device 2016-07-04 14:50:58 +03:00
pc_sysfw.c include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
pc.c q35: ioapic: add support for emulated IOAPIC IR 2016-07-21 20:43:49 +03:00
pci-assign-load-rom.c pci-assign: Move "Invalid ROM" error message to pci-assign-load-rom.c 2016-06-29 14:03:47 +02:00
trace-events trace: split out trace events for hw/i386/ directory 2016-06-20 17:22:16 +01:00
x86-iommu.c x86-iommu: introduce "intremap" property 2016-07-20 19:30:27 +03:00