drm_atomic_commit_put(9)
π drm_atomic_commit_put(9) β Kernel API Manual, bestie edition
okay so this is a page from the Kernel API Manual, and it's about drm_atomic_commit_put β yes it's a kernel function, yes it's a 9, yes we're doing this π
β¨ NAME β¨
drm_atomic_commit_put β release a reference to the atomic state π
πΈ SYNOPSIS πΈ
void drm_atomic_commit_put (struct drm_atomic_commit *state );
π¦ ARGUMENTS π¦
stateβ the atomic state, that's it, that's the whole vibe π«
π§ DESCRIPTION π§
okay so picture this: you're holding a reference to state, and this function releases it. and the moment you drop that final reference? bestie, state gets freed. gone. no cap π
the actual slay here is that there's no locking required β none, zero, nada β and you can call it from any context. literally any. iconic behavior honestly π
fr fr: the free only happens after the final reference is removed. don't be out here thinking it frees early, that's not the vibe π
π SEE ALSO π
Kernel file ./include/drm/drm_atomic.h, plus this whole friend group right here:
struct drm_crtc_commit(9)struct drm_private_state_funcs(9)struct drm_private_obj(9)drm_for_each_privobj(9)struct drm_private_state(9)struct drm_atomic_commit(9)drm_crtc_commit_get(9)drm_crtc_commit_put(9)drm_atomic_commit_get(9)drm_atomic_get_old_crtc_state(9)drm_atomic_get_new_crtc_state(9)drm_atomic_get_old_plane_state(9)drm_atomic_get_new_plane_state(9)drm_atomic_get_old_connector_state(9)drm_atomic_get_new_connector_state(9)__drm_atomic_get_current_plane_state(9)for_each_oldnew_connector_in_state(9)for_each_old_connector_in_state(9)for_each_new_connector_in_state(9)for_each_oldnew_crtc_in_state(9)for_each_old_crtc_in_state(9)for_each_new_crtc_in_state(9)for_each_oldnew_colorop_in_state(9)for_each_new_colorop_in_state(9)for_each_oldnew_plane_in_state(9)for_each_oldnew_plane_in_state_reverse(9)for_each_new_plane_in_state_reverse(9)for_each_old_plane_in_state(9)for_each_new_plane_in_state(9)for_each_oldnew_private_obj_in_state(9)for_each_old_private_obj_in_state(9)for_each_new_private_obj_in_state(9)drm_atomic_crtc_needs_modeset(9)drm_atomic_crtc_effectively_active(9)struct drm_bus_cfg(9)struct drm_bridge_state(9)
and that's the whole page, bestie π«Ά this came out of ./include/drm, dated October 2026, and the version string is literally drm_atomic_commit_put(9) β so yeah, the page is named after itself, main character energy fr π
β¨ go drop that reference, you got this π
π¦ 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