GUC OPT IN FEATURE KLVS(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… GuC OPT IN FEATURE KLVs πŸ’…

okay so welcome to GuC Opt In Feature KLVs(9) β€” that's section 9 of the Kernel API Manual, bestie, and it's literally just the cheat sheet for the opt-in feature keys πŸŽ€


✨ DESCRIPTION ✨

These are the GuC KLV_ keys you're allowed to use with OPT_IN_FEATURE_KLV β€” like, this is the guest list and only these keys get in 🫢

  • GUC_KLV_OPT_IN_FEATURE_EXT_CAT_ERR_TYPE : 0x4001 β€” this one adds an extra dword to the XE_GUC_ACTION_NOTIFY_MEMORY_CAT_ERROR G2H, and that dword carries the type of the CAT error. cute, right? πŸ™ˆ but bestie listen β€” on HW that doesn't support reporting the CAT error type, that extra dword gets set to 0xdeadbeef πŸ’€ so don't go reading it like it's real data, iykyk.
  • GUC_KLV_OPT_IN_FEATURE_DYNAMIC_INHIBIT_CONTEXT_SWITCH : 0x4003 β€” this KLV turns on the Dynamic Inhibit Context Switch optimization ✨ and here's what that actually means: the GuC sets the CTX_CTRL_INHIBIT_SYN_CTX_SWITCH bit to zero in the CTX_CONTEXT_CONTROL register of LRCs that are submitted to an oversubscribed engine πŸ‘‘ so those contexts get switched out immediately if they hit an unsatisfied semaphore wait, instead of sitting there waiting the full timeslice duration. no cap, that's the whole glow-up. but the bit gets set to one instead when a single context is queued on the engine β€” because then you don't want it switched out if there isn't another context that can run in its place πŸ¦‹ it's giving "know when to hold 'em".
  • GUC_KLV_OPT_IN_FEATURE_UNCORRECTABLE_LOCAL_ERROR_NOTIFICATION : 0x4004 β€” this flag enables notification from GuC to KMD via the G2H message GUC_ACTION_GUC2HOST_NOTIFY_UNCORRECTABLE_LOCAL_ERROR when it receives the same interrupt from the CS 🚨 like, the GuC hears the interrupt and immediately tells KMD about it. iconic behavior fr.

🌈 SEE ALSO 🌈

  • Kernel file ./drivers/gpu/drm/xe/abi/guc_klvs_abi.h
  • GuC KLV(9)
  • GuC Global Config KLVs(9)
  • GuC Self Config KLVs(9)
  • GuC Scheduling Policies KLVs(9)
  • GuC VGT Policy KLVs(9)
  • GuC VF Configuration KLVs(9)
  • GuC Reserved KLVs(9)

and that's the whole page, bestie, you ate that πŸ’– this lil section lives out of ./drivers/gpu/drm/xe/abi, dated October 2026 β€” mwah, go forth and opt in responsibly πŸ§šβ€β™€οΈβ­

πŸ“¦ where this page comes from