Estou executando o Ubuntu 16.04 no MacBookAir6.2 com Core-i7-4650U CPU e tentando habilitar VT-d / IOMMU para que eu pudesse passar hardware para máquinas virtuais (QEMU / KVM). De acordo com a especificação da CPU, o VT-d é suportado.

Então eu adicionei intel_iommu=on para a configuração do GRUB conforme instruído Aqui . Isso causou falha de inicialização com mensagens como esta:

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

Uma possível correção para isso é sugerida Aqui : para substituir intel_iommu=on com intel_iommu=pt. Isso corrige o processo de inicialização do host, no entanto, tentar iniciar uma máquina KVM com um dispositivo PCI adicionado a ela ainda resulta em " Erro ao iniciar o domínio: configuração não suportada: o host não suporta passagem de dispositivos PCI host ".

Pesquisando mais sobre os erros do DMAR causados ​​por intel_iommu=on resultou na suspeita de que o hardware como um corpo pode não suportar realmente o VT-d, mesmo que a CPU por si só o faça. eu encontrei esta página informando quais chipsets da Intel suportam o VT-d, mas não consigo encontrar qual chipset meu MacBook possui, se houver. Esta resposta insinua que no meu caso o VT-d seria totalmente provido pela CPU apenas, mas ainda assim é uma maneira de saber com certeza.

Então, como eu sei ao certo se um MacBook Air suporta o VT-d, antes de tentar habilitá-lo / solucioná-lo no Ubuntu?

ATUALIZAR

Acabei de confirmar que o VT-d funciona no meu MacBook Air. Passagem PCI trabalhada no CentOS 7 com intel_iommu=on; mesmo que os mesmos erros de inicialização do Ubuntu tenham aparecido, o sistema inicializou bem.

Greendrake
fonte