STRUCT XE_GUC_ID_MGR(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… struct xe_guc_id_mgr(9)

okay bestie, welcome to the Kernel API Manual β€” today's main character is struct xe_guc_id_mgr, aka the GuC context ID Manager ✨ she's small, she's bookkeeping, she's iconic.


🌸 SYNOPSIS 🌸

here's the whole vibe, literally the entire struct, no cap:

struct xe_guc_id_mgr {
    unsigned long *bitmap;
    unsigned int total;
    unsigned int used;
 };

three fields. that's her. she ate and left no crumbs πŸ“


πŸŽ€ Members πŸŽ€

  • bitmap β€” a bitmap (pointer to unsigned long, bestie) that tracks which IDs are allocated πŸ‘€ it's giving "attendance sheet but make it bits".
  • total β€” the total number of IDs being managed. the whole roster, fr fr.
  • used β€” the number of IDs currently in use. the ones who actually showed up πŸ’…

πŸ’€ Note πŸ’€

not me reminding you again: the GuC context ID Manager is relying on xe_guc::submission_state.lock to protect its members. so like… take the lock. she does not protect herself. periodt πŸ”₯

🌈 SEE ALSO 🌈

  • Kernel file ./drivers/gpu/drm/xe/xe_guc_types.h
  • struct xe_guc_db_mgr(9)
  • struct xe_guc(9)

go read those next, iykyk πŸ¦‹


okay that's the whole page 🫢 it lives in ./drivers/gpu/drm/xe, it's dated October 2026, and it came to you straight from the Kernel API Manual β€” mwah, go forth and manage those IDs responsibly πŸ’–πŸŽ€βœ¨

πŸ“¦ where this page comes from