VFIO Passthrough of SAS2008-based HBA card fails on E3-1225v3 due to failed DMA mapping (-14)
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
QEMU |
Expired
|
Undecided
|
Unassigned |
Bug Description
There is a bug preventing multiple people with my combination of hardware from using PCI passthrough. I am not actually sure whether the bug is in kernel/kvm, vfio or qemu, however, as qemu is the highest-level of these, I am reporting the bug here as you will likely know better where the origin of the bug may be found.
When attempting to pass through this device to a KVM using VFIO, this results in error -14 (Bad Address):
# qemu-system-x86_64 -enable-kvm -m 10G -net none -monitor stdio -serial
# none -parallel none -vnc :1 -device vfio-pci,
QEMU 2.9.1 monitor - type 'help' for more information
(qemu) c
(qemu) qemu-system-x86_64: VFIO_MAP_DMA: -14
qemu-system-x86_64: vfio_dma_
qemu: hardware error: vfio: DMA mapping failed, unable to continue
See also:
https:/
https:/
This has occurred on Proxmox (Proxmox and Debian packages, Ubuntu kernel), Ubuntu,
and pure Debian packages and kernel on Proxmox. However, this error
reportedly does NOT occur for:
- different distributions(!) (Fedora 24, 25)
- different HBA cards (SAS2308, SAS3008)
- different CPU (E3-1220v5)
I would be thankful for any input and I'll be happy to provide any further info necessary. This is my first time delving this deep into anything close to the kernel.
Thanks and best regards,
Johannes Falke
Hello!
Has your problem been solved? I also encountered a similar problem. My ioctl() also returned an error -14(Bad address).