numam-dpdk/drivers/bus
Anatoly Burakov 03ba15ca65 vfio: allow mapping MSI-X BARs if kernel allows it
Currently, DPDK will skip mapping some areas (or even an entire BAR)
if MSI-X table happens to be in them but is smaller than page size.

Kernels 4.16+ will allow mapping MSI-X BARs [1], and will report this
as a capability flag. Capability flags themselves are also only
supported since kernel 4.6 [2].

This commit will introduce support for checking VFIO capabilities,
and will use it to check if we are allowed to map BARs with MSI-X
tables in them, along with backwards compatibility for older
kernels, including a workaround for a variable rename in VFIO
region info structure [3].

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

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

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

Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com>
2018-10-04 00:45:50 +02:00
..
dpaa bus/dpaa: add check for re-definition in compat 2018-09-28 01:41:02 +02:00
fslmc drivers/bus: fill driver reference after NXP probing 2018-09-27 14:43:47 +02:00
ifpga bus/ifpga: remove useless driver cast 2018-09-27 14:43:47 +02:00
pci vfio: allow mapping MSI-X BARs if kernel allows it 2018-10-04 00:45:50 +02:00
vdev bus/vdev: implement device iteration 2018-10-03 14:22:39 +02:00
vmbus bus/vmbus: add devargs support 2018-09-14 20:08:41 +02:00
Makefile bus/vmbus: add Hyper-V virtual bus support 2018-07-13 23:48:07 +02:00
meson.build bus/vmbus: add Hyper-V virtual bus support 2018-07-13 23:48:07 +02:00