diff --git a/Linux/GPU Passthrough.md b/Linux/GPU Passthrough.md index db8148f..ad4762e 100644 --- a/Linux/GPU Passthrough.md +++ b/Linux/GPU Passthrough.md @@ -39,13 +39,11 @@ sudo vim /etc/modprobe.d/vfio.conf ``` > ### Arch -> > ```bash > options vfio-pci ids=10de:28a0,10de:22be > ``` > ### Fedora -> > ```bash > options vfio-pci ids=10de:28a0,10de:22be disable_vga=1 > softdep nvidia pre: vfio-pci @@ -59,7 +57,6 @@ sudo vim /etc/modprobe.d/blacklist-gpu.conf ``` > ### Arch -> > ``` > blacklist nouveau > blacklist nvidia @@ -68,7 +65,6 @@ sudo vim /etc/modprobe.d/blacklist-gpu.conf > ``` > ### Fedora -> > ``` > blacklist nouveau > blacklist nvidia @@ -83,34 +79,27 @@ sudo vim /etc/modprobe.d/blacklist-gpu.conf ## Load VFIO > ### Arch -> > ```bash > sudo vim /etc/mkinitcpio.conf > ``` -> > ``` > MODULES=(vfio vfio_iommu_type1 vfio_pci) > ``` -> > ``` > sudo mkinitcpio -P > sudo reboot > ``` > ### Fedora -> > ```bash > sudo vim /etc/dracut.conf.d/10-vfio.conf > ``` -> > ``` > force_drivers+=" vfio vfio_iommu_type1 vfio_pci " > ``` -> > ```bash > sudo dracut -f > ``` -> > ```bash > sudo reboot > ``` @@ -128,13 +117,173 @@ lspci -nnk -d 10de:22be ## Install Virtualization Stack > ### Arch -> > ```bash > sudo pacman -S --needed virt-manager qemu-full libvirt dnsmasq ovmf swtpm > ``` > ### Fedora -> > ```bash > 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 +> ```bash +> sudo usermod -aG libvirt,kvm,input,render,libvirt-qemu $USER +> ``` + +> ### Fedora +> ```bash +> sudo usermod -aG libvirt,kvm,input,render $USER +> ``` + +Reboot the system. + +And now verify: + +```bash +virsh list --all +``` + +If it doesn't error, you're good. + +# Create the VM + +Start virt-manager + +```bash +virt-manager +``` + +When creating VM: + +- Local ISO +- Windows 11 ISO +- Firmware: UEFI (OVMF) +- Chipset: Q35 +- TPM: emulated + +Before you start the VM: + +```bash +sudo vim /etc/default/ufw +``` + +Find `DEFAULT_FORWARD_POLICY="DROP"` and change it to `DEFAULT_FORWARD_POLICY="ACCEPT"` + +Now boot the VM. + +## Network Issues + +If the network is being wonky, or if you want to bypass updates... Shift-F10 + +``` +OOBE\BYPASSNRO +``` + +Now add the PCI devices in virt-manager. + +```bash +yay -S looking-glass +``` + +On Windows, download the host from https://looking-glass.io/downloads + +```bash +sudo virsh edit win11 +``` + +Inside `` + +```xml + + + 128 + +``` + +```bash +sudo vim /etc/tmpfiles.d/10-looking-glass.conf +``` + +``` +# Type Path Mode UID GID Age Argument +f /dev/shm/looking-glass 0660 YOURUSER kvm - +``` + +```bash +sudo rm -f /dev/shm/looking-glass +``` +```bash +sudo systemd-tmpfiles --create /etc/tmpfiles.d/10-looking-glass.conf +``` +```bash +ls -l /dev/shm/looking-glass +``` + +Should be owned by my user. + +## Install Virtual Display Driver on Windows. + +## Configure Looking Glass + +```bash +vim ~/.looking-glass-client.ini +``` + +```ini +[win] +fullscreen=yes +size=2880x18900 +dontUpscale=yes +``` + +```bash +env -u WAYLAND_DISPLAY looking-glass-client +``` + +## Audio + +Edit XML. Inside `` + +```xml + +