Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

dkms status: i915-sriov-dkms/6.8.12-2, 6.8.12-2-pve, x86_64: installed,but not ok #214

Open
cffycls opened this issue Oct 25, 2024 · 19 comments

Comments

@cffycls
Copy link

cffycls commented Oct 25, 2024

the project Readme.md file show test support 6.8.12-1-pve, and my local version is 6.8.12-2-pve

:~# dkms status
i915-sriov-dkms/6.8.12-2, 6.8.12-2-pve, x86_64: installed
:~# pveversion
pve-manager/8.2.7/3e0176e6bb2ade3b (running kernel: 6.8.12-2-pve)

it looks like install success.

:~# cat /etc/sysfs.conf
devices/pci0000:00/0000:00:02.0/sriov_numvfs = 7
# rebooted, cpu is intel j4215
:~# lspci | grep VGA
00:02.0 VGA compatible controller: Intel Corporation GeminiLake [UHD Graphics 600] (rev 06)

uhd list only one.

:~# dmesg |grep i915
[    0.000000] Command line: BOOT_IMAGE=/boot/vmlinuz-6.8.12-2-pve root=/dev/mapper/pve-root ro quiet intel_iommu=on iommu=pt pcie_acs_override=downstream i915.enable_guc=3 i915.max_vfs=7 root=UUID=382dba2e-853e-4212-ba3d-7173b9d42c3d
[    0.035797] Kernel command line: BOOT_IMAGE=/boot/vmlinuz-6.8.12-2-pve root=/dev/mapper/pve-root ro quiet intel_iommu=on iommu=pt pcie_acs_override=downstream i915.enable_guc=3 i915.max_vfs=7 root=UUID=382dba2e-853e-4212-ba3d-7173b9d42c3d
[    5.161875] i915: module verification failed: signature and/or required key missing - tainting kernel
[    5.968634] i915 0000:00:02.0: [drm] Unknown revid 0x06
[    5.968791] i915 0000:00:02.0: [drm] GT0: Incompatible option enable_guc=3 - GuC submission is N/A
[    5.969248] i915 0000:00:02.0: [drm] VT-d active for gfx access
[    5.980436] i915 0000:00:02.0: vgaarb: deactivate vga console
[    5.980549] i915 0000:00:02.0: [drm] Using Transparent Hugepages
[    5.980649] i915 0000:00:02.0: [drm] couldn't get memory information
[    5.982046] i915 0000:00:02.0: vgaarb: VGA decodes changed: olddecodes=io+mem,decodes=io+mem:owns=io+mem
[    5.983972] mei_hdcp 0000:00:0f.0-b638ab7e-94e2-4ea2-a552-d1c54b627f04: bound 0000:00:02.0 (ops i915_hdcp_ops [i915])
[    5.985939] i915 0000:00:02.0: [drm] Finished loading DMC firmware i915/glk_dmc_ver1_04.bin (v1.4)
[    5.996858] i915 0000:00:02.0: [drm] GT0: GuC firmware i915/glk_guc_70.1.1.bin version 70.1.1
[    5.996872] i915 0000:00:02.0: [drm] GT0: HuC firmware i915/glk_huc_4.0.0.bin version 4.0.0
[    6.012834] i915 0000:00:02.0: [drm] GT0: HuC: authenticated for all workloads!
[    6.012847] i915 0000:00:02.0: [drm] GT0: GUC: submission disabled
[    6.012849] i915 0000:00:02.0: [drm] GT0: GUC: SLPC disabled
[    6.015140] [drm] Initialized i915 1.6.0 20201103 for 0000:00:02.0 on minor 1
[    6.019780] snd_hda_intel 0000:00:0e.0: bound 0000:00:02.0 (ops i915_audio_component_bind_ops [i915])
[    6.020381] i915 0000:00:02.0: [drm] Cannot find any crtc or sizes
[    6.021928] i915 0000:00:02.0: [drm] Cannot find any crtc or sizes
[    6.024830] i915 0000:00:02.0: [drm] Cannot find any crtc or sizes
@huhwhatwho
Copy link

I also had that problem with 6.8.12-2.
I had to pin 6.8.12-1 and everything worked.

proxmox-boot-tool kernel pin 6.8.12-1-pve

@admarty
Copy link

admarty commented Oct 26, 2024

I don't think your iGPU (GeminiLake UHD Graphics 600) supports SR-IOV.

@kaiseu
Copy link

kaiseu commented Oct 26, 2024

root@pve:~# lspci |grep VGA
00:02.0 VGA compatible controller: Intel Corporation Alder Lake-P Integrated Graphics Controller (rev 0c)

I also had that problem with 6.8.12-2.

tried proxmox-boot-tool kernel pin 6.8.12-1-pve, the pve failed to boot...

@crospa91
Copy link

6.8.12-2 as well here and even if the whole procedure complete, I can't see the 7 functions.

Don't have the option to revert or pin older kernels.

@pasbec
Copy link
Contributor

pasbec commented Oct 28, 2024

Only 12th, 13th and 14th Gen GPUs support SR-IOV. Gemini Lake is 9th Gen from 2017 and thus too old.

AlderLake and RaptorLake are both working and I have both of them up and running with 7 VFs with the latest 6.8.12-2-pve kernel.

@cffycls
Copy link
Author

cffycls commented Oct 29, 2024

I also had that problem with 6.8.12-2. I had to pin 6.8.12-1 and everything worked.

proxmox-boot-tool kernel pin 6.8.12-1-pve

Your cpu is also j4215 ? how to do this.
I tried 6.8.12-1-pve, but system start show is 6.8.12-2-pve too.

@pasbec
Copy link
Contributor

pasbec commented Oct 29, 2024

With J4215 you shoud check for a GVT-g guide, not SR-IOV! It is Intels previous GPU virtualization technology.

@yduanBioinfo
Copy link

My host version is 6.8.12-2-pve, and my CPU is intel N100. I suppose I made it.

:~# dkms status
i915-sriov-dkms/2024.09.21, 6.8.12-2-pve, x86_64: installed
:~# pveversion 
pve-manager/8.2.7/3e0176e6bb2ade3b (running kernel: 6.8.12-2-pve)
:~# cat /etc/sysfs.conf 
devices/pci0000:00/0000:00:02.0/sriov_numvfs = 3

:~# lspci | grep VGA
00:02.0 VGA compatible controller: Intel Corporation Alder Lake-N [UHD Graphics]
00:02.1 VGA compatible controller: Intel Corporation Alder Lake-N [UHD Graphics]
00:02.2 VGA compatible controller: Intel Corporation Alder Lake-N [UHD Graphics]
00:02.3 VGA compatible controller: Intel Corporation Alder Lake-N [UHD Graphics]

:~# dmesg | grep i915
[    0.000000] Command line: BOOT_IMAGE=/boot/vmlinuz-6.8.12-2-pve root=/dev/mapper/pve-root ro quiet intel_iommu=on i915.enable_guc=3 i915.max_vfs=3
[    0.026768] Kernel command line: BOOT_IMAGE=/boot/vmlinuz-6.8.12-2-pve root=/dev/mapper/pve-root ro quiet intel_iommu=on i915.enable_guc=3 i915.max_vfs=3
               use xe.force_probe='46d1' and i915.force_probe='!46d1'
[    5.629168] i915: module verification failed: signature and/or required key missing - tainting kernel
[    6.345235] i915 0000:00:02.0: Running in SR-IOV PF mode
......
......
[    7.878545] [drm] Initialized i915 1.6.0 20201103 for 0000:00:02.2 on minor 2
[    7.878901] i915 0000:00:02.0: vgaarb: VGA decodes changed: olddecodes=none,decodes=none:owns=io+mem
[    7.878904] i915 0000:00:02.1: vgaarb: VGA decodes changed: olddecodes=none,decodes=none:owns=none
[    7.878907] i915 0000:00:02.2: vgaarb: VGA decodes changed: olddecodes=io+mem,decodes=none:owns=none
               use xe.force_probe='46d1' and i915.force_probe='!46d1'
[    7.879000] i915 0000:00:02.3: enabling device (0000 -> 0002)
[    7.879023] i915 0000:00:02.3: Running in SR-IOV VF mode
[    7.879321] i915 0000:00:02.3: [drm] *ERROR* GT0: IOV: Unable to confirm version 1.13 (0000000000000000)
[    7.879359] i915 0000:00:02.3: [drm] *ERROR* GT0: IOV: Found interface version 0.1.13.4
[    7.879787] i915 0000:00:02.3: [drm] VT-d active for gfx access
[    7.879824] i915 0000:00:02.3: [drm] Using Transparent Hugepages
[    7.880355] i915 0000:00:02.3: [drm] *ERROR* GT0: IOV: Unable to confirm version 1.13 (0000000000000000)
[    7.880393] i915 0000:00:02.3: [drm] *ERROR* GT0: IOV: Found interface version 0.1.13.4
[    7.880724] i915 0000:00:02.3: GuC firmware PRELOADED version 0.0 submission:SR-IOV VF
[    7.880728] i915 0000:00:02.3: HuC firmware PRELOADED
[    7.881007] i915 0000:00:02.3: [drm] *ERROR* GT0: GUC: mmio request 0x4100: failure 201/0
[    7.881009] i915 0000:00:02.3: [drm] *ERROR* GT0: Failed to retrieve hwconfig table: -ENOENT
[    7.882921] i915 0000:00:02.3: [drm] Protected Xe Path (PXP) protected content support initialized
[    7.882929] i915 0000:00:02.3: [drm] PMU not supported for this GPU.
[    7.883023] [drm] Initialized i915 1.6.0 20201103 for 0000:00:02.3 on minor 3
[    7.883240] i915 0000:00:02.0: Enabled 3 VFs

By the way, I failed at the first try because I hadn't run "update-grub".

@pasbec
Copy link
Contributor

pasbec commented Oct 29, 2024

You could get rid of the firmware mismatch but the mmio remains. But the VFs seem to work despite the error messages. Just ignore the errors. Got the same output on my N100 and VFs are working fine with 3D and video accelleration in Windows RDP. My N100 host is up and running for 60 days without issues.

@purefalse
Copy link

purefalse commented Oct 30, 2024

I encountered the same problem
But I want to share the graphics card function to OMV VM hard decoding HEVC
But when starting OMV VM i915 crashes on boot

Video card captured in OMV
But there is no such thing in /dev/dri

Is there any solution to this?

@pasbec
Copy link
Contributor

pasbec commented Oct 30, 2024

Have you installed the drivers in omv aswell?

@yduanBioinfo
Copy link

I encountered the same problem But I want to share the graphics card function to OMV VM hard decoding HEVC But when starting OMV VM i915 crashes on boot

Video card captured in OMV But there is no such thing in /dev/dri

Is there any solution to this?

Actually, I have the same demand as you. However, I'm still trying to make VF work in OMV VM guest. Now I'm stuck in the "make deb-pkg" step, It's hard.

@purefalse
Copy link

I encountered the same problem But I want to share the graphics card function to OMV VM hard decoding HEVC But when starting OMV VM i915 crashes on boot
Video card captured in OMV But there is no such thing in /dev/dri
Is there any solution to this?

Actually, I have the same demand as you. However, I'm still trying to make VF work in OMV VM guest. Now I'm stuck in the "make deb-pkg" step, It's hard.

I never thought about installing the driver Because I directly pass through the graphics card omv it can be caught but i will try i just think omv It should also be able to capture my sliced ​​graphics card. But it seems it can't And although the slicing is successful in pve But i915 reports that it has an error But I saw that everyone in win10 can directly ignore the error and output successfully. That's why I want to ask if I did something wrong somewhere

@yduanBioinfo
Copy link

@purefalse According to the README of this Driver, Linux platform geust should also install this driver to enable VF pass through. While on the Windows platform the driver can be installed smoothly since it have already supported the intel VF driver (I guess).

@Zackptg5
Copy link

I got it working on 6.8.12-2-pve but I had to essentially reinstall i915 kernel module:

rm -rf /usr/src/i915-sriov-dkms-*
rm -rf /var/lib/dkms/i915-sriov-dkms
find /lib/modules -regex ".*/updates/dkms/i915.ko" -delete
cd ~/i915-sriov-dkms
git pull
dkms add .
dkms install -m i915-sriov-dkms -v $(cat VERSION) --force
update-initramfs -u -k all

@yduanBioinfo
Copy link

@purefalse I built an Ubuntu VM server on my PVE host. After installing i915 driver inside the VM machine, the VF worked, and hardware transcoding was successfully enabled.

@purefalse
Copy link

purefalse commented Nov 2, 2024

2 1

I't OK.
But not working.

~#  lspci -nn | grep -Ei "3d|display|vga"
00:10.0 VGA compatible controller [0300]: Intel Corporation Alder Lake-N [UHD Graphics] [8086:46d1]
~# ls /dev/dri
ls: cannot access '/dev/dri': No such file or directory

I use (intel-media-va-driver-non-free) and (intel / media-driver)
reboot

ls /dev/dri Neither

openmediavault 7.0

~# uname -a
Linux Home-Disk 6.1.0-26-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.112-1 (2024-09-30) x86_64 GNU/Linux

I don't know what else to try

Only lxc jellyfin remains

@purefalse
Copy link

Later I installed the OMV plug-in
Replace PVE core
After installing the i915 driver it seems OK
To be tested

@purefalse
Copy link

Although /dev/dir is read
But there is no function
I don’t know if there is any solution

OMV:~# ls /dev/dri
by-path  card0  renderD128

OMV ~# sudo dmesg | grep i915
               use xe.force_probe='46d1' and i915.force_probe='!46d1'
[   12.052762] i915: loading out-of-tree module taints kernel.
[   12.052814] i915: module verification failed: signature and/or required key missing - tainting kernel
[   12.420743] i915 0000:00:10.0: Running in SR-IOV VF mode
[   12.421357] i915 0000:00:10.0: [drm] *ERROR* GT0: IOV: Unable to confirm version 1.13 (0000000000000000)
[   12.421403] i915 0000:00:10.0: [drm] *ERROR* GT0: IOV: Found interface version 0.1.13.4
[   12.422086] i915 0000:00:10.0: vgaarb: deactivate vga console
[   12.422120] i915 0000:00:10.0: [drm] Using Transparent Hugepages
[   12.423790] i915 0000:00:10.0: [drm] *ERROR* GT0: IOV: Unable to confirm version 1.13 (0000000000000000)
[   12.423834] i915 0000:00:10.0: [drm] *ERROR* GT0: IOV: Found interface version 0.1.13.4
[   12.424230] i915 0000:00:10.0: GuC firmware PRELOADED version 0.0 submission:SR-IOV VF
[   12.424232] i915 0000:00:10.0: HuC firmware PRELOADED
[   12.425294] i915 0000:00:10.0: [drm] *ERROR* GT0: GUC: mmio request 0x4100: failure 201/0
[   12.425300] i915 0000:00:10.0: [drm] *ERROR* GT0: Failed to retrieve hwconfig table: -ENOENT
[   12.428232] i915 0000:00:10.0: [drm] Protected Xe Path (PXP) protected content support initialized
[   12.428250] i915 0000:00:10.0: [drm] PMU not supported for this GPU.
[   12.428836] [drm] Initialized i915 1.6.0 20201103 for 0000:00:10.0 on minor 0
[   68.659006] i915 0000:00:10.0: [drm] GPU HANG: ecode 12:1:00000000, in ffmpeg [1434]
[   68.659014] i915 0000:00:10.0: [drm] ffmpeg[1434] context reset due to GPU hang
[   89.008013] Fence expiration time out i915-0000:00:10.0:ffmpeg[1439]:2!
[   93.683313] i915 0000:00:10.0: [drm] GPU HANG: ecode 12:1:00000000, in ffmpeg [1439]
[   93.683323] i915 0000:00:10.0: [drm] ffmpeg[1439] context reset due to GPU hang

OMV # sudo /usr/lib/jellyfin-ffmpeg/vainfo --display drm --device /dev/dri/renderD128
sudo: /usr/lib/jellyfin-ffmpeg/vainfo: command not found

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

9 participants