drm_atomic_helper_commit(9)
π drm_atomic_helper_commit(9) π
okay so bestie, welcome to the Kernel API Manual β yes we're in the kernel docs now, main character energy only. This page is all about drm_atomic_helper_commit, and it's genuinely iconic, let me tell you everything π«Ά
β¨ NAME β¨
drm_atomic_helper_commit β commit validated state object. that's it, that's the whole vibe: you got a state object, it's already been validated, now you commit it π
πΈ SYNOPSIS πΈ
int drm_atomic_helper_commit (struct drm_device *dev , struct
drm_atomic_commit *state , bool nonblock );
π ARGUMENTS π
devβ the DRM device. your fave. the whole reason we're here πstateβ the driver state object. this is the one getting committed, no cap.nonblockβ whether nonblocking behavior is requested. like, do you wanna wait around or not, bestie?
π¦ DESCRIPTION π¦
so here's the tea: this function commits a state object that was pre-validated with drm_atomic_helper_check. already vetted, already slayed β¨
but heads up β it can still fail even after all that, like when the framebuffer reservation fails, for example. the vibe check isn't a guarantee, fr fr π
it also implements nonblocking commits, using drm_atomic_helper_setup_commit and related functions. so like, the async girlies are covered π
and the actual committing of the hardware state? that gets done through the drm_mode_config_helper_funcs.atomic_commit_tail callback, or its default implementation, drm_atomic_helper_commit_tail. those are the ones actually touching the hardware, iykyk π₯
β RETURN β
Zero for success, or -errno. classic. we love a return value that tells you exactly what's up π
π SEE ALSO π
okay this is the long part and honestly? it's giving "linked list of destiny" β every single one of these matters, so imma list them all, no skipping π
- Kernel file
./drivers/gpu/drm/drm_atomic_helper.c overview(9)drm_atomic_helper_check_modeset(9)drm_atomic_helper_check_wb_connector_state(9)drm_atomic_helper_check_plane_state(9)drm_atomic_helper_check_crtc_primary_plane(9)drm_atomic_helper_check_planes(9)drm_atomic_helper_check(9)drm_atomic_helper_commit_encoder_bridge_disable(9)drm_atomic_helper_commit_crtc_disable(9)drm_atomic_helper_commit_encoder_bridge_post_disable(9)drm_atomic_helper_update_legacy_modeset_state(9)drm_atomic_helper_calc_timestamping_constants(9)drm_atomic_helper_commit_crtc_set_mode(9)drm_atomic_helper_commit_modeset_disables(9)drm_atomic_helper_commit_writebacks(9)drm_atomic_helper_commit_encoder_bridge_pre_enable(9)drm_atomic_helper_commit_crtc_enable(9)drm_atomic_helper_commit_encoder_bridge_enable(9)drm_atomic_helper_commit_modeset_enables(9)drm_atomic_helper_wait_for_fences(9)drm_atomic_helper_wait_for_vblanks(9)drm_atomic_helper_wait_for_flip_done(9)drm_atomic_helper_commit_tail(9)drm_atomic_helper_commit_tail_rpm(9)drm_atomic_helper_async_check(9)drm_atomic_helper_async_commit(9)implementing nonblocking commit(9)drm_atomic_helper_setup_commit(9)drm_atomic_helper_wait_for_dependencies(9)drm_atomic_helper_fake_vblank(9)drm_atomic_helper_commit_hw_done(9)drm_atomic_helper_commit_cleanup_done(9)drm_atomic_helper_prepare_planes(9)drm_atomic_helper_unprepare_planes(9)drm_atomic_helper_commit_planes(9)drm_atomic_helper_commit_planes_on_crtc(9)drm_atomic_helper_disable_planes_on_crtc(9)drm_atomic_helper_cleanup_planes(9)drm_atomic_helper_swap_state(9)drm_atomic_helper_update_plane(9)drm_atomic_helper_disable_plane(9)drm_atomic_helper_set_config(9)drm_atomic_helper_disable_all(9)drm_atomic_helper_reset_crtc(9)drm_atomic_helper_shutdown(9)drm_atomic_helper_duplicate_state(9)drm_atomic_helper_suspend(9)drm_atomic_helper_commit_duplicated_state(9)drm_atomic_helper_resume(9)drm_atomic_helper_page_flip(9)drm_atomic_helper_page_flip_target(9)drm_atomic_helper_bridge_propagate_bus_fmt(9)drm_atomic_helper_bridge_get_hdmi_output_bus_fmts(9)
and that's the whole page bestie, you ate that π β¨
cute little sign-off: this gem lives over in ./drivers/gpu/drm, and it's stamped October 2026 π go forth and commit (your state objects, not crimes) π¦π
π¦ 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