Unable to get intel arc working in Debian 12 VM, device recognized, no /dev/dri entry - 33Fraise33 - 2024-04-27
Hello,
I am having a lot of issues getting an Intel ARC gpu working on Debian 12. I have enabled aspm and resizable bar in my bios.My hardware is:
- Asrock Rack X570D4U
- AMD 3700x
- 64GB Ecc Memory
- Truenas OS with Debian 12 VM with PCI Passthrough
- Intel ARC A310
My debian machine currently has the following packages installed: - jellyfin-ffmpeg5 - intel-gpu-tools - firmware-linux-free - firmware-misc-nonfree - firmware-linux-nonfree - linux-image-amd64/bookworm-backports - linux-headers-amd64/bookworm-backports - intel-opencl-icd - intel-media-va-driver-non-free
it is showing the gpu:
Code: $ sudo uname -r
6.6.13+bpo-amd64
$ lspci
00:00.0 Host bridge: Intel Corporation 440FX - 82441FX PMC [Natoma] (rev 02)
00:01.0 ISA bridge: Intel Corporation 82371SB PIIX3 ISA [Natoma/Triton II]
00:01.1 IDE interface: Intel Corporation 82371SB PIIX3 IDE [Natoma/Triton II]
00:01.3 Bridge: Intel Corporation 82371AB/EB/MB PIIX4 ACPI (rev 03)
00:02.0 VGA compatible controller: Red Hat, Inc. QXL paravirtual graphic card (rev 05)
00:03.0 Ethernet controller: Red Hat, Inc. Virtio network device
00:04.0 Ethernet controller: Red Hat, Inc. Virtio network device
00:05.0 USB controller: Red Hat, Inc. QEMU XHCI Host Controller (rev 01)
00:06.0 USB controller: NEC Corporation uPD720200 USB 3.0 Host Controller (rev 03)
00:07.0 Communication controller: Red Hat, Inc. Virtio console
00:08.0 SCSI storage controller: Red Hat, Inc. Virtio block device
00:09.0 SCSI storage controller: Red Hat, Inc. Virtio block device
00:0a.0 SCSI storage controller: Red Hat, Inc. Virtio block device
00:0b.0 VGA compatible controller: Intel Corporation DG2 [Arc A310] (rev 05)
00:0c.0 Unclassified device [00ff]: Red Hat, Inc. Virtio memory balloon
$ sudo lshw -C display
*-display:0
description: VGA compatible controller
product: QXL paravirtual graphic card
vendor: Red Hat, Inc.
physical id: 2
bus info: pci@0000:00:02.0
logical name: /dev/fb0
version: 05
width: 32 bits
clock: 33MHz
capabilities: vga_controller bus_master rom fb
configuration: depth=32 driver=qxl latency=0 resolution=1024,768
resources: irq:11 memory:c4000000-c7ffffff memory:c0000000-c3ffffff memory:c8040000-c8041fff ioport:c240(size=32) memory:c0000-dffff
*-display:1 UNCLAIMED
description: VGA compatible controller
product: DG2 [Arc A310]
vendor: Intel Corporation
physical id: b
bus info: pci@0000:00:0b.0
version: 05
width: 32 bits
clock: 33MHz
capabilities: pciexpress msi pm vga_controller bus_master cap_list
configuration: latency=0
resources: memory:c0000-dffff
$ sudo lsmod
Module Size Used by
bluetooth 1138688 0
ecdh_generic 16384 1 bluetooth
rfkill 40960 2 bluetooth
xt_nat 12288 180
xt_tcpudp 16384 0
ipvlan 45056 0
veth 40960 0
xt_conntrack 12288 1
nft_chain_nat 12288 93
xt_MASQUERADE 16384 1
nf_nat 65536 3 xt_nat,nft_chain_nat,xt_MASQUERADE
nf_conntrack_netlink 61440 0
nf_conntrack 212992 5 xt_conntrack,nf_nat,xt_nat,nf_conntrack_netlink,xt_MASQUERADE
nf_defrag_ipv6 24576 1 nf_conntrack
nf_defrag_ipv4 12288 1 nf_conntrack
xfrm_user 61440 1
xfrm_algo 16384 1 xfrm_user
xt_addrtype 12288 2
nft_compat 20480 184
nf_tables 372736 1677 nft_compat,nft_chain_nat
libcrc32c 12288 3 nf_conntrack,nf_nat,nf_tables
nfnetlink 20480 4 nft_compat,nf_conntrack_netlink,nf_tables
br_netfilter 32768 0
bridge 385024 1 br_netfilter
stp 12288 1 bridge
llc 16384 2 bridge,stp
rpcsec_gss_krb5 32768 0
auth_rpcgss 192512 1 rpcsec_gss_krb5
nfsv4 1196032 1
dns_resolver 12288 1 nfsv4
nfs 610304 3 nfsv4
lockd 159744 1 nfs
grace 12288 1 lockd
fscache 397312 1 nfs
netfs 69632 2 fscache,nfs
sunrpc 880640 10 nfsv4,auth_rpcgss,lockd,rpcsec_gss_krb5,nfs
overlay 204800 46
binfmt_misc 28672 1
nls_ascii 12288 1
nls_cp437 16384 1
vfat 20480 1
fat 102400 1 vfat
intel_rapl_msr 20480 0
intel_rapl_common 36864 1 intel_rapl_msr
kvm_amd 184320 0
ccp 143360 1 kvm_amd
i915 3956736 0
kvm 1359872 1 kvm_amd
irqbypass 12288 1 kvm
ghash_clmulni_intel 16384 0
cp210x 40960 1
sha512_ssse3 45056 1
usbserial 73728 3 cp210x
sha256_ssse3 32768 0
cdc_acm 49152 2
drm_buddy 20480 1 i915
hid_generic 12288 0
sha1_ssse3 32768 0
drm_display_helper 233472 1 i915
qxl 86016 0
cec 69632 2 drm_display_helper,i915
aesni_intel 360448 0
rc_core 73728 1 cec
drm_ttm_helper 12288 1 qxl
ttm 106496 3 qxl,drm_ttm_helper,i915
usbhid 77824 0
crypto_simd 16384 1 aesni_intel
i2c_algo_bit 12288 1 i915
hid 176128 2 usbhid,hid_generic
cryptd 28672 2 crypto_simd,ghash_clmulni_intel
video 77824 1 i915
drm_kms_helper 270336 5 qxl,drm_display_helper,i915
button 24576 0
pcspkr 12288 0
virtio_balloon 32768 0
wmi 40960 1 video
virtio_console 40960 1
evdev 28672 2
joydev 24576 0
serio_raw 16384 0
drm 802816 8 drm_kms_helper,qxl,drm_display_helper,drm_buddy,drm_ttm_helper,i915,ttm
dm_mod 217088 0
loop 36864 0
configfs 69632 1
efi_pstore 12288 0
efivarfs 24576 1
qemu_fw_cfg 20480 0
ip_tables 28672 0
x_tables 61440 7 xt_conntrack,nft_compat,xt_tcpudp,xt_addrtype,xt_nat,ip_tables,xt_MASQUERADE
autofs4 57344 2
ext4 1134592 3
crc16 12288 2 bluetooth,ext4
mbcache 16384 1 ext4
jbd2 196608 1 ext4
crc32c_generic 12288 0
xhci_pci 24576 0
ata_generic 12288 0
xhci_hcd 352256 1 xhci_pci
crct10dif_pclmul 12288 0
ata_piix 45056 0
crct10dif_common 12288 1 crct10dif_pclmul
libata 471040 2 ata_piix,ata_generic
crc32_pclmul 12288 0
crc32c_intel 16384 7
usbcore 409600 6 usbserial,xhci_hcd,usbhid,cp210x,cdc_acm,xhci_pci
virtio_net 86016 0
psmouse 208896 0
scsi_mod 327680 1 libata
net_failover 24576 1 virtio_net
virtio_blk 32768 6
floppy 98304 0
usb_common 20480 2 xhci_hcd,usbcore
i2c_piix4 32768 0
failover 12288 1 net_failover
scsi_common 16384 2 scsi_mod,libata
in dmesg when I look for the pci id in the logs I see:
Code: $ sudo dmesg | grep -i 00:0b.0
[ 0.223720] pci 0000:00:0b.0: [8086:56a6] type 00 class 0x030000
[ 0.224108] pci 0000:00:0b.0: ASPM: overriding L1 acceptable latency from 0x0 to 0x7
[ 0.224124] pci 0000:00:0b.0: Video device with shadowed ROM at [mem 0x000c0000-0x000dffff]
[ 0.231852] pci 0000:00:0b.0: vgaarb: bridge control possible
[ 0.231853] pci 0000:00:0b.0: vgaarb: VGA device added: decodes=io+mem,owns=io+mem,locks=none
under /dev/dri I only see the spice virtual display:
Code: # ls -l /dev/dri/
total 0
drwxr-xr-x 2 root root 60 Apr 27 06:33 by-path
crw-rw---- 1 root video 226, 0 Apr 27 06:33 card0
# ls -l /dev/dri/by-path/
total 0
lrwxrwxrwx 1 root root 8 Apr 27 06:33 pci-0000:00:02.0-card -> ../card0
I enabled the module as well.
Code: $ sudo mkdir -p /etc/modprobe.d
$ sudo sh -c "echo 'options i915 enable_guc=2' >> /etc/modprobe.d/i915.conf"
My vainfo shows the following:
Code: $ sudo /usr/lib/jellyfin-ffmpeg/vainfo
Trying display: drm
libva info: VA-API version 1.20.0
libva info: Trying to open /usr/lib/jellyfin-ffmpeg/lib/dri/qxl_drv_video.so
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/qxl_drv_video.so
libva info: Trying to open /usr/lib/dri/qxl_drv_video.so
libva info: Trying to open /usr/local/lib/dri/qxl_drv_video.so
libva info: va_openDriver() returns -1
vaInitialize failed with error code -1 (unknown libva error),exit
Any indicator on what I a might be doing wrong? I followed some other reddit posts and the jellyfin guidelines but to no avail.
RE: Unable to get intel arc working in Debian 12 VM, device recognized, no /dev/dri entry - Fate - 2024-04-27
I don't use Truenas. So your passthrough might not working right. Maybe your question should be redirecting at the truenas forum.
But according to the arch wiki
https://wiki.archlinux.org/title/intel_graphics
your gpu should be using guc=3
Any output on journalctl or dmesg?
I needed these packaged for VA-API on arch so your packet names may vary:
pacman -Sy libva-utils
pacman -Sy intel-media-driver
pacman -Sy intel-gpu-tools
In addition I needed those for Quicksync:
pacman -Sy intel-media-sdk
pacman -Sy onevpl-intel-gpu
You can check guc status via:
cat /sys/kernel/debug/dri/0/i915_gpu_info
Also i would recommend to add "non-free-firmware" to apt/sources
and get the "intel-microcode" package. (maybe optional)
RE: Unable to get intel arc working in Debian 12 VM, device recognized, no /dev/dri entry - TheDreadPirate - 2024-04-27
What Fate said, double check the passthrough. The TrueNAS forum would be a better place to ask. We only have LXC and LXC+Proxmox docs.
Once /dev/dri/renderD128 is visible to the VM, you shouldn't need to install anything else. jellyfin-ffmpeg bundles all the drivers needed in it.
|