vfio/quirks: Enable ioeventfd quirks to be handled by vfio directly
commit2b1dbd0d7250254e9421bce721cc2ea25b4af894
authorAlex Williamson <alex.williamson@redhat.com>
Tue, 5 Jun 2018 14:23:17 +0000 (5 08:23 -0600)
committerAlex Williamson <alex.williamson@redhat.com>
Tue, 5 Jun 2018 14:28:09 +0000 (5 08:28 -0600)
tree6c87213262cef00382fb8b444bce436bf735ca0e
parentc958c51d2e9923d0eb14dfec46920f69bd793cb4
vfio/quirks: Enable ioeventfd quirks to be handled by vfio directly

With vfio ioeventfd support, we can program vfio-pci to perform a
specified BAR write when an eventfd is triggered.  This allows the
KVM ioeventfd to be wired directly to vfio-pci, entirely avoiding
userspace handling for these events.  On the same micro-benchmark
where the ioeventfd got us to almost 90% of performance versus
disabling the GeForce quirks, this gets us to within 95%.

Reviewed-by: Peter Xu <peterx@redhat.com>
Reviewed-by: Eric Auger <eric.auger@redhat.com>
Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
hw/vfio/pci-quirks.c
hw/vfio/pci.c
hw/vfio/pci.h
hw/vfio/trace-events