KVM: Allow host IRQ sharing for assigned PCI 2.3 devices
authorJan Kiszka <jan.kiszka@siemens.com>
Tue, 28 Feb 2012 13:19:54 +0000 (14:19 +0100)
committerAvi Kivity <avi@redhat.com>
Thu, 8 Mar 2012 12:11:36 +0000 (14:11 +0200)
commit07700a94b00a4fcbbfb07d1b72dc112a0e036735
treee4a8045d6a44906463102a04c7a87337c38e16aa
parent3e515705a1f46beb1c942bb8043c16f8ac7b1e9e
KVM: Allow host IRQ sharing for assigned PCI 2.3 devices

PCI 2.3 allows to generically disable IRQ sources at device level. This
enables us to share legacy IRQs of such devices with other host devices
when passing them to a guest.

The new IRQ sharing feature introduced here is optional, user space has
to request it explicitly. Moreover, user space can inform us about its
view of PCI_COMMAND_INTX_DISABLE so that we can avoid unmasking the
interrupt and signaling it if the guest masked it via the virtualized
PCI config space.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Acked-by: Alex Williamson <alex.williamson@redhat.com>
Acked-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Avi Kivity <avi@redhat.com>
Documentation/virtual/kvm/api.txt
arch/x86/kvm/x86.c
include/linux/kvm.h
include/linux/kvm_host.h
virt/kvm/assigned-dev.c