2.1 KiB
2.1 KiB
Linux Host Setup
Enable IOMMU
sudo vim /etc/default/grub
Add amd_iommu=on iommu=pt
GRUB_CMDLINE_LINUX_DEFAULT="... amd_iommu=on iommu=pt"
sudo grub-mkconfig -o /boot/grub/grub.cfg
sudo reboot
Verify
sudo dmesg | grep -i iommu
Find GPU IDs
lspci -nn | grep -E "VGA|Audio"
In my case, I get
10de:28a010de:22be
VFIO Module Options
sudo vim /etc/modprobe.d/vfio.conf
Arch
options vfio-pci ids=10de:28a0,10de:22be
Fedora
options vfio-pci ids=10de:28a0,10de:22be disable_vga=1 softdep nvidia pre: vfio-pci softdep nouveau pre: vfio-pci
Blacklist GPU
sudo vim /etc/modprobe.d/blacklist-gpu.conf
Arch
blacklist nouveau blacklist nvidia blacklist nvidia_drm blacklist nvidia_modeset
Fedora
blacklist nouveau blacklist nvidia blacklist nvidia_drm blacklist nvidia_modeset blacklist nvidia_uvm blacklist rivafb blacklist nvidiafb blacklist snd_hda_intel
Load VFIO
Arch
sudo vim /etc/mkinitcpio.confMODULES=(vfio vfio_iommu_type1 vfio_pci)sudo mkinitcpio -P sudo reboot
Fedora
sudo vim /etc/dracut.conf.d/10-vfio.confforce_drivers+=" vfio vfio_iommu_type1 vfio_pci "sudo dracut -fsudo reboot
Confirm Kernel Driver
lspci -nnk -d 10de:28a0
lspci -nnk -d 10de:22be
Install Virtualization Stack
Arch
sudo pacman -S --needed virt-manager qemu-full libvirt dnsmasq ovmf swtpm
Fedora
sudo dnf install @virtualization virt-manager qemu-kvm libvirt-daemon-config-network libvirt-daemon-kvm bridge-utils edk2-ovmf swtpm
User Groups and Permissions
Arch
sudo usermod -aG libvirt,kvm,input,render,libvirt-qemu $USER
Fedora
sudo usermod -aG libvirt,kvm,input,render $USER
Reboot the system.
And now verify:
virsh list --all
If it doesn't error, you're good.