2

I am running Ubuntu 16.04 on MacBookAir6,2 with Core-i7-4650U CPU and trying to enable VT-d/IOMMU so that I could passthrough hardware to virtual machines (QEMU/KVM). According to the CPU spec, VT-d is supported.

So I added intel_iommu=on to the GRUB config as instructed here. This caused boot failure with messages like this:

DMAR: DRHD: handling fault status reg 2
DMAR: DMAR:[DMA Write] Request device [04:00.1] fault addr fffe00

A possible fix to that is suggested here: to replace intel_iommu=on with intel_iommu=pt. This fixes the host boot process, however, trying to start a KVM machine with a PCI device added to it still results in "Error starting domain: unsupported configuration: host doesn't support passthrough of host PCI devices".

Further googling on that DMAR errors caused by intel_iommu=on resulted in the suspicion that the hardware as a body might not actually support VT-d, even though the CPU on its own does. I found this page telling which Intel chipsets support VT-d, but I cannot find what chipset my MacBook has, if any. This answer hints that in my case VT-d would be wholly provided by the CPU only, but still to way to know it for sure.

So, how do I tell for sure if a MacBook Air supports VT-d, before trying to enable/troubleshoot it in Ubuntu?

UPDATE

I just confirmed that VT-d works on my MacBook Air. PCI passthrough worked on CentOS 7 with intel_iommu=on; even though the same boot errors as with Ubuntu showed up, the system booted fine.

0

You must log in to answer this question.

Browse other questions tagged .