STRUCT XE_HW_ENGINE_GROUP(9)
π struct xe_hw_engine_group(9) β the kernel API manual, but make it make sense
Okay bestie, grab your iced coffee, because this is a page from the Kernel API Manual and we're talking about struct xe_hw_engine_group β literally a "Hardware engine group" π
β¨ NAME β¨
struct xe_hw_engine_group β Hardware engine group. That's it, that's the name, no cap. π
π¦ SYNOPSIS π¦
Here's the whole struct, and yes you're gonna want to copy it exactly:
struct xe_hw_engine_group {
struct list_head exec_queue_list;
struct work_struct resume_work;
struct workqueue_struct *resume_wq;
struct rw_semaphore mode_sem;
enum xe_hw_engine_group_execution_mode cur_mode;
};
Look at her. Five members. Main character energy fr fr. π
πΈ Members πΈ
exec_queue_listβ the list of exec queues attached to thisxe_hw_engine_group. Think of it as the group chat roster, but for exec queues. π«Άresume_workβ a worker to resume faulting LR exec queues. It's the one who wakes everybody up after a page fault nap. πresume_wqβ the workqueue to resume faulting LR exec queues. Same job as above, but this is the venue where the resuming happens. β¨mode_semβ used to protect this group's hardware resources and to ensure mutual exclusion between execution only in faulting LR mode and execution only inDMA_FENCEmode. So like, one at a time, no overlap, we don't do chaos here. π₯cur_modeβ the current execution mode of this hw engine group. Her current vibe check, basically. β
π Description π
So here's the tea: hw engines belong to the same group if they share hardware resources in a way that prevents them from making progress when one is stuck on a page fault. π§
Read that again. If one of them is stuck, the shared-resource situation means the others can't move forward either. They're in it together, for better or worse. It's giving β¨found familyβ¨ but the family is stuck on a page fault.
π SEE ALSO π
- Kernel file
./drivers/gpu/drm/xe/xe_hw_engine_group_types.h(go read the header bestie, it's right there) enum xe_hw_engine_group_execution_mode(9)
π Lowkey reminder: this is the types header in ./drivers/gpu/drm/xe β that's where the struct actually lives, so if you're looking for the real deal, that's the spot.
And that's the whole page, bestie! π Source: ./drivers/gpu/drm/xe, straight from the Kernel API Manual, dated October 2026 β and the page footer still says struct xe_hw_engine_group(9), iconic of her honestly. π Slay, go forth, and don't page-fault on me. π¦
π¦ 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