diff options
author | Jan Kiszka <jan.kiszka@siemens.com> | 2012-05-17 10:32:31 -0300 |
---|---|---|
committer | Avi Kivity <avi@redhat.com> | 2012-05-21 19:22:49 +0300 |
commit | 2cdfe53c5f502415932de552c0c7dad369954d4c (patch) | |
tree | 7eb856f0631583a65770a9e6417962612005cedd /hw/msix.h | |
parent | 5b5f1330da2d7e5b5cbde8c60738774b2bd8692f (diff) |
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>
Diffstat (limited to 'hw/msix.h')
-rw-r--r-- | hw/msix.h | 4 |
1 files changed, 4 insertions, 0 deletions
@@ -29,4 +29,8 @@ void msix_notify(PCIDevice *dev, unsigned vector); void msix_reset(PCIDevice *dev); +int msix_set_vector_notifiers(PCIDevice *dev, + MSIVectorUseNotifier use_notifier, + MSIVectorReleaseNotifier release_notifier); +void msix_unset_vector_notifiers(PCIDevice *dev); #endif |