The way I installed the sr-iov patches is via dkms:
- install dkms kernel-devel kernel-latest-devel in dom0 and gpu-hvm template
- download latest release zip from GitHub - strongtz/i915-sriov-dkms: dkms module of Linux i915 driver with SR-IOV support
- copy into dom0
qvm-run --pass-io <src-vm> 'cat /path/to/i915-sriov-dkms-2025.02.03' > /path/to/i915-sriov-dkms-2025.02.03
and to gpu-hvm templateqvm-copy i915-sriov-dkms-2025.02.03.zip
- unzip release zip
unzip i915-sriov-dkms-2025.02.03.zip
- add to dkms via
dkms add ./i915-sriov-dkms-2025.02.03
- install module via
dkms install i915-sriov-dkms/2025.02.03
- kernel commandline needs to be adjusted:
vim /etc/default/grub
and changeGRUB_CMDLINE_LINUX_DEFAULT
tointel_iommu=on i915.enable_guc=3 i915.max_vfs=7 module_blacklist=xe
, or add to it if you have other arguments there already. - update grub config
grub2-mkconfig -o /boot/efi/EFI/qubes/grub.cfg
(dom0) - rebuild initramfs
dracut --regenerate-all --force
- after rebuild I can enable the virtual devices via
echo 7 > /sys/devices/pci0000\:00/0000\:00\:02.0/sriov_numvfs
I did the same on the VM template in my case fedora-40 only leaving out the i915.max_vfs=7
kernel parameter.
After setting everything up and making sure all kernel options are in place I tried passing through one of the GPUs to the new VM but I get the libxenlight failed to create a domain
when trying to start it with GPU attached. Permissive / no-strict-reset for the gpu didn’t fix it.
I’ll try to create a debian-13 template analog to 1x3n1x’s setup and will see if it changes anything. If not I guess I can wait another 2 weeks for his howto after many years without gpu acceleration on Qubes