[vfio-users] Unable to enable IOMMU

Alex Williamson alex.williamson at redhat.com
Sat Nov 12 03:35:44 UTC 2016


On Sat, 12 Nov 2016 06:18:08 +0300
Имя Фамилия <vgck at list.ru> wrote:

> I'm trying to get GPU passthrough to work, but haven't gotten very far. I'm losing my mind trying to figure out what could be the problem. I'm working with a 5820k and an ASUS X99-A II, both of which support IOMMU. I enabled VT-d in the UEFI settings and added intel_iommu=on to GRUB.
> 
> I restart, and when I cat /proc/cmdline I can see the option is there there but it had no effect. There's nothing under /sys/kernel/iommu_groups, there is no iommu_group folder under /sys/bus/pci/devices/MYBUS/, and when I grep dmesg I get a generic "DMAR: IOMMU enabled" messages and a warning that I don't have AMD IOMMUv2 functionality but that's it.
> 
> dmesg contents: http://ptpb.pw/ZpcL
> 
> Any ideas what I'm missing?

Time to look for a BIOS update.  These are the ACPI tables provided by
your motherboard firmware:

[    0.000000] ACPI: RSDP 0x00000000BB258000 000024 (v02 ALASKA)
[    0.000000] ACPI: XSDT 0x00000000BB258090 00009C (v01 ALASKA A M I    01072009 AMI  00010013)
[    0.000000] ACPI: FACP 0x00000000BB28E828 00010C (v05 ALASKA A M I    01072009 AMI  00010013)
[    0.000000] ACPI: DSDT 0x00000000BB2581C8 03665C (v02 ALASKA A M I    01072009 INTL 20091013)
[    0.000000] ACPI: FACS 0x00000000BD4A5F80 000040
[    0.000000] ACPI: APIC 0x00000000BB28E938 000100 (v03 ALASKA A M I    01072009 AMI  00010013)
[    0.000000] ACPI: FPDT 0x00000000BB28EA38 000044 (v01 ALASKA A M I    01072009 AMI  00010013)
[    0.000000] ACPI: FIDT 0x00000000BB28EA80 00009C (v01 ALASKA A M I    01072009 AMI  00010013)
[    0.000000] ACPI: MCFG 0x00000000BB28EB20 00003C (v01 ALASKA A M I    01072009 MSFT 00000097)
[    0.000000] ACPI: ASF! 0x00000000BB2A5400 0000A0 (v32 INTEL   HCG     00000001 TFSM 000F4240)
[    0.000000] ACPI: SSDT 0x00000000BB28EBB8 00036D (v01 SataRe SataTabl 00001000 INTL 20120913)
[    0.000000] ACPI: UEFI 0x00000000BB28EF28 000042 (v01 ALASKA A M I    01072009      00000000)
[    0.000000] ACPI: HPET 0x00000000BB28EF70 000038 (v01 ALASKA A M I    00000001 INTL 20091013)
[    0.000000] ACPI: MSCT 0x00000000BB28EFA8 000090 (v01 ALASKA A M I    00000001 INTL 20091013)
[    0.000000] ACPI: SLIT 0x00000000BB28F038 00002D (v01 ALASKA A M I    00000001 INTL 20091013)
[    0.000000] ACPI: SRAT 0x00000000BB28F068 001158 (v03 ALASKA A M I    00000001 INTL 20091013)
[    0.000000] ACPI: WDDT 0x00000000BB2901C0 000040 (v01 ALASKA A M I    00000000 INTL 20091013)
[    0.000000] ACPI: SSDT 0x00000000BB290200 0151C1 (v02 ALASKA PmMgt    00000001 INTL 20120913)
[    0.000000] ACPI: BGRT 0x00000000BB2A53C8 000038 (v01 ALASKA A M I    01072009 AMI  00010013)

The problem is that there's no DMAR table.  DMAR describes the VT-d
configuration and is required to enable intel_iommu.  If you have a
VT-d setting in the BIOS enabled, you might try saving and exiting the
BIOS, then doing a cold power cycle to make it take effect.  Otherwise
look for a BIOS update, contact Asus, or return it.  Regarding the
"IOMMU enabled" line in dmesg:

http://vfio.blogspot.com/2016/09/intel-iommu-enabled-it-doesnt-mean-what.html

Good luck,
Alex




More information about the vfio-users mailing list