Używam Ubuntu 16.04 na MacBookAir6,2 z procesorem Core-i7-4650U i próbuję włączyć VT-d / IOMMU, aby móc przekazywać sprzęt do maszyn wirtualnych (QEMU / KVM). Zgodnie ze specyfikacją procesora obsługiwany jest VT-d.
Więc dodałem intel_iommu=on
do konfiguracji GRUB, zgodnie z instrukcją tutaj . Spowodowało to awarię rozruchu przy takich komunikatach:
DMAR: DRHD: handling fault status reg 2
DMAR: DMAR:[DMA Write] Request device [04:00.1] fault addr fffe00
Ewentualna poprawka do tego sugeruje się tutaj : wymienić intel_iommu=on
z intel_iommu=pt
. To naprawia proces rozruchu hosta, jednak próba uruchomienia maszyny KVM z dodanym urządzeniem PCI nadal powoduje „ Błąd uruchamiania domeny: nieobsługiwana konfiguracja: host nie obsługuje przekazywania urządzeń PCI ”.
Dalsze googlowanie po błędach DMAR spowodowanych przez intel_iommu=on
podejrzenie, że sprzęt jako ciało może w rzeczywistości nie obsługiwać VT-d, nawet jeśli sam procesor tak robi. Znalazłem tę stronę z informacją, które chipsety Intel obsługują VT-d, ale nie mogę znaleźć, jaki chipset ma mój MacBook, jeśli w ogóle. Ta odpowiedź wskazuje, że w moim przypadku VT-d byłby w całości zapewniony tylko przez procesor, ale wciąż jest pewien, że na pewno go poznasz.
Jak więc stwierdzić na pewno, czy MacBook Air obsługuje VT-d, zanim spróbuję włączyć / rozwiązać problem w Ubuntu?
AKTUALIZACJA
Właśnie potwierdziłem, że VT-d działa na moim MacBooku Air. Przekazywanie PCI działało na CentOS 7 z intel_iommu=on
; mimo że pojawiły się te same błędy uruchamiania, co w przypadku Ubuntu, system uruchomił się dobrze.