qemu-e2k/hw/vfio
Alexey Kardashevskiy ae0215b2bb vfio-pci: Allow mmap of MSIX BAR
At the moment we unconditionally avoid mapping MSIX data of a BAR and
emulate MSIX table in QEMU. However it is 1) not always necessary as
a platform may provide a paravirt interface for MSIX configuration;
2) can affect the speed of MMIO access by emulating them in QEMU when
frequently accessed registers share same system page with MSIX data,
this is particularly a problem for systems with the page size bigger
than 4KB.

A new capability - VFIO_REGION_INFO_CAP_MSIX_MAPPABLE - has been added
to the kernel [1] which tells the userspace that mapping of the MSIX data
is possible now. This makes use of it so from now on QEMU tries mapping
the entire BAR as a whole and emulate MSIX on top of that.

[1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=a32295c612c57990d17fb0f41e7134394b2f35f6

Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>
Reviewed-by: David Gibson <david@gibson.dropbear.id.au>
Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
2018-03-13 11:17:31 -06:00
..
Makefile.objs vfio/display: core & wireup 2018-03-13 11:17:29 -06:00
amd-xgbe.c qdev: use device_class_set_parent_realize/unrealize/reset() 2018-02-05 13:54:38 +01:00
calxeda-xgmac.c qdev: use device_class_set_parent_realize/unrealize/reset() 2018-02-05 13:54:38 +01:00
ccw.c vfio-ccw: license text should indicate GPL v2 or later 2018-03-08 15:49:23 +01:00
common.c vfio-pci: Allow mmap of MSIX BAR 2018-03-13 11:17:31 -06:00
display.c vfio/display: adding dmabuf support 2018-03-13 11:17:30 -06:00
pci-quirks.c vfio/pci: Add option to disable GeForce quirks 2018-02-06 11:08:27 -07:00
pci.c vfio-pci: Allow mmap of MSIX BAR 2018-03-13 11:17:31 -06:00
pci.h vfio/display: adding region support 2018-03-13 11:17:30 -06:00
platform.c use g_path_get_basename instead of basename 2018-03-06 14:01:29 +01:00
spapr.c vfio, spapr: Fix levels calculation 2017-09-15 10:29:48 +10:00
trace-events vfio/pci: Allow relocating MSI-X MMIO 2018-02-06 11:08:26 -07:00