Einschalten von vt-d für Intel CPUs (iommu)
Immou aktivieren für Intel CPUs. Hier wird unterschiedn ob es ein UEFI System oder legacy System ist.
Vorrausetzung ist das im BIOS alles mit vt-d eingeschlatet ist und somit das Mainboard und CPU das auch unterstützen.
Überpüfe welches System vorliegt
ls /sys/firmware/efi
Wenn kein Ergebnis vor liegt ist es BIOS legacy boot.
Unter Legacy Boot (also nicht EFI) in der Datei
nano /etc/default/grub
Dort
GRUB_CMDLINE_LINUX_DEFAULT="quiet"
zu
GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on
ändern und
update-grub
ausführen.
Unter EFI Boot in der Datei
nano /etc/kernel/cmdline
Dort
root=ZFS=rpool/ROOT/pve-1 boot=zfs
zu
root=ZFS=rpool/ROOT/pve-1 boot=zfs intel_iommu=on
ändern und
pve-efiboot-tool refresh
ausführen.
Module beim start laden. Der Modules Datei anfügen
nano /etc/modules
vfio
vfio_iommu_type1
vfio_pci
vfio_virqfd
Wenn Grafikkarten durchgereicht werden sollen müssen noch die Treiber geblacklistet werden.
ansonsten kann dieser Teil übersprungen werden.
echo "blacklist radeon" >> /etc/modprobe.d/blacklist.conf
echo "blacklist nouveau" >> /etc/modprobe.d/blacklist.conf
echo "blacklist nvidia" >> /etc/modprobe.d/blacklist.conf
update-initramfs -u
Hier gehts weiter. Wenn der Grafikkarten teil übersprungen wurde.
Nun die Machine neustarten. Ob iommu aktiv ist kann man mittels.
lsmoddmesg | grep vfioIOMMU
festellen.
Ausgabe:
vfio_pci[ 163840.028060] 0DMAR: vfio_pci_coreIOMMU 73728enabled
1[ vfio_pci0.090496] vfio_virqfdDMAR-IR: 16384IOAPIC 1 vfio_pci_core
irqbypass 16384id 2 vfio_pci_core,kvmunder vfio_iommu_type1DRHD 40960base 0xfed90000 IOMMU 0
vfio 45056 2 vfio_pci_core,vfio_iommu_type1
Sollte nichts ausgegeben werden, im bios nochmals schauen ob vt-d aktiv ist.