msix: Introduce vector notifiers
commit2cdfe53c5f502415932de552c0c7dad369954d4c
authorJan Kiszka <jan.kiszka@siemens.com>
Thu, 17 May 2012 13:32:31 +0000 (17 10:32 -0300)
committerAvi Kivity <avi@redhat.com>
Mon, 21 May 2012 16:22:49 +0000 (21 19:22 +0300)
tree7eb856f0631583a65770a9e6417962612005cedd
parent5b5f1330da2d7e5b5cbde8c60738774b2bd8692f
msix: Introduce vector notifiers

Vector notifiers shall be triggered by the MSI/MSI-X core whenever a
relevant configuration change is programmed by the guest. In case of
MSI-X, changes are reported when the effective mask (global &&
per-vector) alters its state. On unmask, the current vector
configuration is included in the event report. This allows users - e.g.
virtio-pci layer - to transfer this information to external MSI-X
routing subsystems - like vhost + KVM in-kernel irqchip.

This implementation only provides MSI-X support, but extension to MSI is
feasible and will be provided later on when adding support for KVM PCI
device assignment.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Signed-off-by: Avi Kivity <avi@redhat.com>
hw/msix.c
hw/msix.h
hw/pci.h