STRUCT XE_GUC_SUBMIT_EXEC_QUEUE_SNAPSHOT(9)
π NAME π
struct xe_guc_submit_exec_queue_snapshot β bestie, it's literally a Snapshot for devcoredump β¨
So like, this is the Kernel API Manual page for it (you're reading the struct xe_gu...eue_snapshot(9) one, mwah) and we're gonna go through every single member, no skipping, no cap π«Ά
πΈ SYNOPSIS πΈ
struct xe_guc_submit_exec_queue_snapshot {
char name[MAX_FENCE_NAME_LEN];
enum xe_engine_class class;
u32 logical_mask;
u16 width;
u32 refcount;
long sched_timeout;
struct {
u32 timeslice_us;
u32 preempt_timeout_us;
} sched_props;
struct xe_lrc_snapshot **lrc;
u32 schedule_state;
unsigned long exec_queue_flags;
struct {
u32 wqi_head;
u32 wqi_tail;
u16 id;
} guc;
bool parallel_execution;
struct {
struct {
u32 head;
u32 tail;
u32 status;
} wq_desc;
u32 wq[WQ_SIZE / sizeof(u32)];
} parallel;
struct {
u32 primary;
u8 pos;
bool valid;
} multi_queue;
};
Obsessed with her honestly π
π¦ MEMBERS π¦
Okay so here's the whole cast, character by character, main character energy only π
nameβ the name of this exec queue πΈclassβ the class of this exec queue, iykyklogical_maskβ logical mask of where a job submitted to the exec queue can actually runwidthβ width of this exec queue, aka how many BB submitted per exec πrefcountβ ref count of this exec queue, keeping track of who's holding onsched_timeoutβ the time after which a job is removed from the scheduler. yes, removed, that's the whole point πsched_propsβ scheduling properties π«sched_props.timeslice_usβ timeslice period in micro-seconds β±οΈsched_props.preempt_timeout_usβ preemption timeout in micro-seconds β±οΈlrcβ LRC Snapshot, periodtschedule_stateβ Schedule State at the moment of Crash π like a little crime scene photoexec_queue_flagsβ flags of the faulty exec_queue π©gucβ GuC Engine Snapshot β¨guc.wqi_headβ work queue item headguc.wqi_tailβ work queue item tailguc.idβ GuC id for this exec_queue πͺͺparallel_executionβ indication if the failure was during parallel execution πparallelβ snapshot of the useful parallel scratch π§parallel.wq_descβ Workqueue description πparallel.wq_desc.headβ Workqueue Headparallel.wq_desc.tailβ Workqueue Tailparallel.wq_desc.statusβ Workqueue Statuswqβ Workqueue Items πmulti_queueβ snapshot of the multi queue information πmulti_queue.primaryβ GuC id of the primary exec queue of the multi queue group πmulti_queue.posβ position of the exec queue within the multi queue group πmulti_queue.validβ the exec queue is part of a multi queue group β
π₯ SEE ALSO π₯
- Kernel file
./drivers/gpu/drm/xe/xe_guc_submit_types.hstruct guc_submit_parallel_scratch(9)
Go read those too bestie, fr fr π
β¨ Okay that's the whole page!! This iconic little manual lives at ./drivers/gpu/drm/xe, and it's dated October 2026 β so she's from the future, slay π¦β° Thanks for reading, mwah, bye!! π
π
π¦ 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