PCIe passthrough issue

Bonobo

New Member
Mar 13, 2017
2
0
1
34
I followed the instructions on the wiki to passthrough a simple PCIe Intel NIC in Proxmox which went fine until I actually tried to boot the VM. I got hit with an error message as follows:
kvm: -device vfio-pci,host=0a:00.0,id=hostpci0.0,bus=pci.0,addr=0x10.0,multifunction=on: vfio: failed to set iommu for container: Operation not permitted
kvm: -device vfio-pci,host=0a:00.0,id=hostpci0.0,bus=pci.0,addr=0x10.0,multifunction=on: vfio: failed to setup container for group 15
kvm: -device vfio-pci,host=0a:00.0,id=hostpci0.0,bus=pci.0,addr=0x10.0,multifunction=on: vfio: failed to get group 15
kvm: -device vfio-pci,host=0a:00.0,id=hostpci0.0,bus=pci.0,addr=0x10.0,multifunction=on: Device initialization failed

Upon checking dmesg I get this error message:
vfio-pci 0000:09:00.0: Device is ineligible for IOMMU domain attach due to platform RMRR requirement. Contact your platform vendor.

There is an article on HPE which described the problem with a solution but that didn't work. (new user, can't post link)

I followed the instructions which gave no errors but the kernel error persists and the VM does not boot.

I have a HP microserver G8 by the way. It has a Xeon 1265l processor which clearly supports VT-d.

Is there a solution available?
 
Hi,

This means your iommu group is shared with an other device what can't be freed.
send the output of

find /sys/kernel/iommu_groups/ -type l
 
/sys/kernel/iommu_groups/0/devices/0000:00:00.0
/sys/kernel/iommu_groups/1/devices/0000:00:01.0
/sys/kernel/iommu_groups/1/devices/0000:05:00.0
/sys/kernel/iommu_groups/1/devices/0000:06:02.0
/sys/kernel/iommu_groups/1/devices/0000:06:04.0
/sys/kernel/iommu_groups/1/devices/0000:07:00.0
/sys/kernel/iommu_groups/1/devices/0000:07:00.1
/sys/kernel/iommu_groups/1/devices/0000:08:00.0
/sys/kernel/iommu_groups/1/devices/0000:08:00.1
/sys/kernel/iommu_groups/2/devices/0000:00:06.0
/sys/kernel/iommu_groups/3/devices/0000:00:1a.0
/sys/kernel/iommu_groups/4/devices/0000:00:1c.0
/sys/kernel/iommu_groups/5/devices/0000:00:1c.4
/sys/kernel/iommu_groups/6/devices/0000:00:1c.6
/sys/kernel/iommu_groups/7/devices/0000:00:1c.7
/sys/kernel/iommu_groups/8/devices/0000:00:1d.0
/sys/kernel/iommu_groups/9/devices/0000:00:1e.0
/sys/kernel/iommu_groups/10/devices/0000:00:1f.0
/sys/kernel/iommu_groups/10/devices/0000:00:1f.2
/sys/kernel/iommu_groups/11/devices/0000:03:00.0
/sys/kernel/iommu_groups/11/devices/0000:03:00.1
/sys/kernel/iommu_groups/12/devices/0000:04:00.0
/sys/kernel/iommu_groups/13/devices/0000:01:00.0
/sys/kernel/iommu_groups/13/devices/0000:01:00.1
/sys/kernel/iommu_groups/13/devices/0000:01:00.2
/sys/kernel/iommu_groups/13/devices/0000:01:00.4

This is without ACS override. 07 and 08 addresses are the NIC ones.