Skip to content

xe driver: SR-IOV VFs not created on boot despite correct kernel parameters #423

Description

@tempaone

Hello,

I am experiencing an issue where the xe driver fails to initialize SR-IOV virtual functions automatically on boot, despite having the correct kernel parameters configured. I have followed the PVE 9.1 installation steps, but the VFs remain unavailable until I manually intervene.

Environment:

OS: Proxmox VE 9.1 (Kernel: 6.17.13-1-pve)

Hardware: Raptor Lake-P [Iris Xe Graphics]

Configuration:
My GRUB cmdline includes the necessary parameters:
GRUB_CMDLINE_LINUX_DEFAULT="intel_iommu=on xe.max_vfs=7 xe.force_probe=0xa7a0 module_blacklist=i915 initcall_blacklist=sysfb_init pcie_aspm=off"

The Issue:
On boot, the VFs are not created. However, if I manually run modprobe xe (if not already loaded) followed by writing to sriov_numvfs, the VFs initialize perfectly.

Steps to Reproduce:

Boot the system.

Check lspci | grep VGA -> Only the physical function (00:02.0) is visible.

Manually run:

modprobe xe
echo 7 | tee /sys/bus/pci/devices/0000:00:02.0/sriov_numvfs

VFs are created successfully.

Expected Behavior:
The xe driver should initialize SR-IOV VFs automatically during the boot sequence based on the xe.max_vfs=7 parameter.

Actual Behavior:
The driver does not load, sriov_numvfs interface does not trigger the creation of VFs until a manual write operation is performed after the kernel has finished booting.

root@caxey-pve:~# lspci | grep VGA
00:02.0 VGA compatible controller: Intel Corporation Raptor Lake-P [Iris Xe Graphics](rev 04)
02:00.0 VGA compatible controller: NVIDIA Corporation GK208B [GeForce GT 710] (rev a1
root@caxey-pve:~# echo 7 | tee /sys/bus/pci/devices/0000:00:02.0/sriov_numvfs
7
tee: '/sys/bus/pci/devices/0000:00:02.0/sriov_numvfs': No such file or directory
root@caxey-pve:~# modprobe xe
root@caxey-pve:~# lspci | grep VGA
00:02.0 VGA compatible controller: Intel Corporation Raptor Lake-P [Iris Xe Graphics](rev 04)
02:00.0 VGA compatible controller: NVIDIA Corporation GK208B [GeForce GT 710] (rev a1
root@caxey-pve:~# echo 7 | tee /sys/bus/pci/devices/0000:00:02.0/sriov_numvfs
7
root@caxey-pve:~# lspci | grep VGA
00:02.0 VGA compatible controller: Intel Corporation Raptor Lake-P [Iris Xe Graphics](rev 04)
00:02.1 VGA compatible controller: Intel Corporation Raptor Lake-P [Iris Xe Graphics](rev 04)
00:02.2 VGA compatible controller: Intel Corporation Raptor Lake-P [Iris Xe Graphics](rev 04)
00:02.3 VGA compatible controller: Intel Corporation Raptor Lake-P [Iris Xe Graphics](rev 04)
00:02.4 VGA compatible controller: Intel Corporation Raptor Lake-P [Iris Xe Graphics](rev 04)
00:02.5 VGA compatible controller: Intel Corporation Raptor Lake-P [Iris Xe Graphics](rev 04)
00:02.6 VGA compatible controller: Intel Corporation Raptor Lake-P [Iris Xe Graphics](rev 04)
00:02.7 VGA compatible controller: Intel Corporation Raptor Lake-P [Iris Xe Graphics](rev 04)
02:00.0 VGA compatible controller: NVIDIA Corporation GK208B [GeForce GT 710] (rev a1)

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions