drm_exec_ret...n_contention(9)
π drm_exec_retry_on_contention β¨
okay so real talk, the header on this one gets chopped in the terminal (drm_exec_ret...n_contention(9), tragic π) but it's from the Kernel API Manual and it is exactly what it sounds like: the little control-flow helper that says "bestie, we hit contention, wrap it up and run it back." π
πΈ NAME πΈ
drm_exec_retry_on_contention β restart the loop so we can grab all the locks π«Ά
β¨ SYNOPSIS β¨
drm_exec_retry_on_contention (exec );
π ARGUMENTS π
execβ thedrm_execobject. that's the whole vibe check, one (1) argument, no notes π
π¦ DESCRIPTION π¦
So this is a control flow helper π β its whole job is to keep things moving when a contention was detected and we need to clean up and re-start the loop to prepare all the GEM objects. like, everyone out of the pool, we're resetting π₯
β οΈ okay important: there's a__drm_exec_loopcheck in here, and it exists specifically to prevent usage outside of adrm_exec_until_all_lockedloop. so do not be out here calling it wherever, the check will catch you and it will not be cute π
π SEE ALSO π
Kernel file ./include/drm/drm_exec.h β plus the whole friend group:
- struct
drm_exec(9) drm_exec_obj(9)drm_exec_for_each_locked_object(9)drm_exec_for_each_locked_object_reverse(9)drm_exec_until_all_locked(9)drm_exec_is_contended(9)drm_exec_retry(9)drm_exec_ticket(9)
and that's the page, periodt π this one lives in ./include/drm, it's the October 2026 drop, and it's part of the Kernel API Manual β go read drm_exec_until_all_locked(9) next, iykyk π§ββοΈβ¨
π¦ 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