]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
vfio/pci: Add ioeventfd support
authorAlex Williamson <alex.williamson@redhat.com>
Wed, 21 Mar 2018 18:46:21 +0000 (12:46 -0600)
committerAlex Williamson <alex.williamson@redhat.com>
Mon, 26 Mar 2018 19:22:58 +0000 (13:22 -0600)
commit30656177c4080460b936709ff6648f201d7d2c1a
tree736aca0117c845222f0fd44cdcd661f431bd810d
parent07fd7ef3a1c25a11015bb5821c9c5982f722d4a2
vfio/pci: Add ioeventfd support

The ioeventfd here is actually irqfd handling of an ioeventfd such as
supported in KVM.  A user is able to pre-program a device write to
occur when the eventfd triggers.  This is yet another instance of
eventfd-irqfd triggering between KVM and vfio.  The impetus for this
is high frequency writes to pages which are virtualized in QEMU.
Enabling this near-direct write path for selected registers within
the virtualized page can improve performance and reduce overhead.
Specifically this is initially targeted at NVIDIA graphics cards where
the driver issues a write to an MMIO register within a virtualized
region in order to allow the MSI interrupt to re-trigger.

Reviewed-by: Peter Xu <peterx@redhat.com>
Reviewed-by: Alexey Kardashevskiy <aik@ozlabs.ru>
Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
drivers/vfio/pci/vfio_pci.c
drivers/vfio/pci/vfio_pci_private.h
drivers/vfio/pci/vfio_pci_rdwr.c
include/uapi/linux/vfio.h