On the Proxmox host
As vfio-pci has taken over the graphic card successfully, here is how I pass the igpu to the VM
However, VM console is frozen but the VM is still running fine with the following error:
I can even see the device renderD128 and the driver seems to load fine
Code:
root@pve3:~# cat /etc/default/grub
# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.
# For full documentation of the options in this file, see:
# info -f grub -n 'Simple configuration'
GRUB_DEFAULT=0
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
#GRUB_CMDLINE_LINUX_DEFAULT="quiet"
GRUB_CMDLINE_LINUX_DEFAULT="iommu=pt intel_iommu=on quiet"
GRUB_CMDLINE_LINUX=""
Code:
root@pve3:~# cat /etc/modules
# /etc/modules: kernel modules to load at boot time.
#
# This file contains the names of kernel modules that should be loaded
# at boot time, one per line. Lines beginning with "#" are ignored.
# Parameters can be specified after the module name.
# Modules required for PCI passthrough
vfio
vfio_iommu_type1
vfio_pci
vfio_virqfd
Code:
root@pve3:~# cat /etc/modprobe.d/vfio.conf
options vfio-pci ids=8086:3e92
softdep i915 pre: vfio-pci
Code:
root@pve3:~# lspci -nnks 00:02.0
00:02.0 VGA compatible controller [0300]: Intel Corporation CoffeeLake-S GT2 [UHD Graphics 630] [8086:3e92]
DeviceName: Onboard - Video
Subsystem: Lenovo CoffeeLake-S GT2 [UHD Graphics 630] [17aa:312d]
Kernel driver in use: vfio-pci
Kernel modules: i915
As vfio-pci has taken over the graphic card successfully, here is how I pass the igpu to the VM
Code:
root@pve3:~# cat /etc/pve/qemu-server/101.conf
agent: enabled=1,fstrim_cloned_disks=1
bios: ovmf
boot: order=scsi0;scsi1
cores: 1
cpu: x86-64-v2-AES
efidisk0: truenas-vhd:vm-101-disk-1,efitype=4m,pre-enrolled-keys=1,size=1M
hostpci0: 0000:00:02.0,pcie=1
ipconfig0: ip=dhcp
machine: q35
memory: 512
meta: creation-qemu=9.0.2,ctime=1723642736
name: deb12-test
nameserver: 172.16.100.2
net0: virtio=BC:24:11:94:A8:BC,bridge=vmbr100
onboot: 1
scsi0: truenas-vhd:vm-101-disk-2,discard=on,size=10G,ssd=1
scsi1: truenas-vhd:vm-101-cloudinit,media=cdrom,size=4M
scsihw: virtio-scsi-single
However, VM console is frozen but the VM is still running fine with the following error:
Code:
admin@deb12-test:~$ sudo dmesg | grep i915
[ 5.127654] i915 0000:01:00.0: [drm] VT-d active for gfx access
[ 5.129449] i915 0000:01:00.0: [drm] Using Transparent Hugepages
[ 5.139907] i915 0000:01:00.0: BAR 6: can't assign [??? 0x00000000 flags 0x20000000] (bogus alignment)
[ 5.141184] i915 0000:01:00.0: [drm] Failed to find VBIOS tables (VBT)
[ 5.148537] i915 0000:01:00.0: vgaarb: changed VGA decodes: olddecodes=io+mem,decodes=none:owns=none
[ 5.297392] i915 0000:01:00.0: firmware: failed to load i915/kbl_dmc_ver1_04.bin (-2)
[ 5.299844] i915 0000:01:00.0: firmware: failed to load i915/kbl_dmc_ver1_04.bin (-2)
[ 5.300823] i915 0000:01:00.0: Direct firmware load for i915/kbl_dmc_ver1_04.bin failed with error -2
[ 5.308235] i915 0000:01:00.0: [drm] Failed to load DMC firmware i915/kbl_dmc_ver1_04.bin. Disabling runtime power management.
[ 5.309512] i915 0000:01:00.0: [drm] DMC firmware homepage: https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/tree/i915
[ 12.797385] i915 0000:01:00.0: [drm] failed to retrieve link info, disabling eDP
[ 17.922751] [drm] Initialized i915 1.6.0 20201103 for 0000:01:00.0 on minor 1
[ 23.121933] i915 0000:01:00.0: [drm] Cannot find any crtc or sizes
[ 28.288034] i915 0000:01:00.0: [drm] Cannot find any crtc or sizes
[ 33.490732] i915 0000:01:00.0: [drm] Cannot find any crtc or sizes
I can even see the device renderD128 and the driver seems to load fine
Code:
admin@deb12-test:~$ lspci -nnks 01:00.0
01:00.0 VGA compatible controller [0300]: Intel Corporation CoffeeLake-S GT2 [UHD Graphics 630] [8086:3e92]
Subsystem: Lenovo CoffeeLake-S GT2 [UHD Graphics 630] [17aa:312d]
Kernel driver in use: i915
Kernel modules: i915
admin@deb12-test:~$ ls /dev/dri
by-path card0 card1 renderD128
Last edited: