numam-dpdk/drivers/bus/pci
Maxime Coquelin 54a328f552 bus/pci: forbid IOVA mode if IOMMU address width too small
Intel VT-d supports different address widths for the IOVAs, from
39 bits to 56 bits.

While recent processors support at least 48 bits, VT-d emulation
currently only supports 39 bits. It makes DMA mapping to fail in this
case when using VA as IOVA mode, as user-space virtual addresses uses
up to 47 bits (see kernel's Documentation/x86/x86_64/mm.txt).

This patch parses VT-d CAP register value available in sysfs, and
forbid VA as IOVA mode if the GAW is 39 bits or unknown.

Fixes: f37dfab21c ("drivers/net: enable IOVA mode for Intel PMDs")
Cc: stable@dpdk.org

Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com>
Tested-by: Chas Williams <chas3@att.com>
2018-01-20 16:25:48 +01:00
..
bsd drivers: use SPDX tag for Intel copyright files 2018-01-04 22:41:39 +01:00
linux bus/pci: forbid IOVA mode if IOMMU address width too small 2018-01-20 16:25:48 +01:00
Makefile pci: introduce library and driver 2017-10-26 23:17:31 +02:00
pci_common_uio.c bus/pci: fix interrupt handler type 2018-01-12 01:04:22 +01:00
pci_common.c bus/pci: fix namespace of sysfs path function 2017-11-07 00:44:10 +01:00
private.h pci: introduce library and driver 2017-10-26 23:17:31 +02:00
rte_bus_pci_version.map bus/pci: fix namespace of sysfs path function 2017-11-07 00:44:10 +01:00
rte_bus_pci.h bus/pci: fix namespace of sysfs path function 2017-11-07 00:44:10 +01:00