STRUCT XE_DEVICE_PF(9)
π§ struct xe_device_pf(9) β Xe PF related data
okay so bestie, welcome to the struct xe_device_pf(9) page from the Kernel API Manual π this is the one that holds all the Xe PF related data, and honestly it's giving "backstage pass to the whole SR-IOV operation" energy π
β¨ SYNOPSIS β¨
struct xe_device_pf {
u16 device_total_vfs;
u16 driver_max_vfs;
struct xe_guard guard_vfs_enabling;
struct mutex master_lock;
struct xe_sriov_pf_provision provision;
struct xe_sriov_pf_migration migration;
struct xe_sriov_pf_service service;
struct {
struct kobject *root;
} sysfs;
struct xe_sriov_metadata *vfs;
};
like, just look at her π everything a PF needs to keep track of its VFs, all in one struct, all in one vibe πΈ
π Members π
device_total_vfsβ the maximum number of VFs the device itself can support. the hardware's hard limit, no cap fr πdriver_max_vfsβ the maximum number of VFs the driver supports. yes bestie, these are two different numbers, and yes, you need both π«Άguard_vfs_enablingβ literally guards VFs enabling. it's the bouncer at the door of the VF club πͺβ¨master_lockβ protects all VFs configurations across GTs. one lock to rule them all, periodt πprovisionβ device level provisioning data.migrationβ device level migration data.serviceβ device level service data.sysfsβ device level sysfs data.sysfs.rootβ the rootkobjectfor all SR-IOV entries in sysfs. the mother of the sysfs tree, the main character πvfsβ metadata for all VFs. all of them. every single one π¦
π Description π
ok this part is important, don't skip it π
the data in this structure is valid only if the driver is running in the XE_SRIOV_MODE_PF mode. that's it. that's the vibe check β wrong mode, and none of this means anything π so fr fr, check your mode first π
β SEE ALSO β
- Kernel file
./drivers/gpu/drm/xe/xe_sriov_pf_types.hstructxe_sriov_metadata(9)
go read that one next bestie, it's the sister page and she slays too ππ
okay that's the whole page!! π this little beauty lives in ./drivers/gpu/drm/xe, and she's dated October 2026 β struct xe_device_pf(9), Kernel API Manual, that's a wrap, mwah ππ¦β¨
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms