vmw_binding_state_alloc(9)
β¨ vmw_binding_state_alloc(9) β aka the "birth a binding state" page β¨
okay so bestie, welcome to the kernel API manual π«Ά this one's a kernel API page, and yes it lives in the 9 section because that's the section for kernel interfaces, iykyk. it's giving "small function, big friend group" and we're about to get into it π
πΈ NAME πΈ
vmw_binding_state_alloc β literally just allocate a struct vmw_ctx_binding_state. that's the whole job. main character energy for a function that's exactly one thing π
β¨ SYNOPSIS β¨
struct vmw_ctx_binding_state * vmw_binding_state_alloc (struct
vmw_private *dev_priv );
so you hand it a device priv pointer and it hands you back a pointer to a struct vmw_ctx_binding_state *. that's the vibe π
π¦ ARGUMENTS π¦
dev_privβ a pointer to a device private structure. that's it, that's the whole input, she's low maintenance π
π« DESCRIPTION π«
Returns a pointer to a newly allocated struct β or, plot twist, an error pointer if something went wrong π so like, always vibe check your return value before you dereference it, no cap. an error pointer is not a real pointer to a struct and treating it like one is gonna be a bad time fr fr π
π SEE ALSO π
the whole friend group, all of them, zero skipped, we don't do that here π the kernel file is ./drivers/gpu/drm/vmwgfx/vmwgfx_binding.c and here's everyone else:
struct vmw_ctx_binding_state(9)struct vmw_binding_info(9)vmw_cbs_context(9)vmw_binding_loc(9)vmw_binding_drop(9)vmw_binding_add(9)vmw_binding_cb_offset_update(9)vmw_binding_add_uav_index(9)vmw_binding_transfer(9)vmw_binding_state_kill(9)vmw_binding_state_scrub(9)vmw_binding_res_list_kill(9)vmw_binding_res_list_scrub(9)vmw_binding_state_commit(9)vmw_binding_rebind_all(9)vmw_binding_scrub_shader(9)vmw_binding_scrub_render_target(9)vmw_binding_scrub_texture(9)vmw_binding_scrub_dx_shader(9)vmw_binding_scrub_cb(9)vmw_collect_view_ids(9)vmw_collect_dirty_view_ids(9)vmw_emit_set_sr(9)vmw_emit_set_rt(9)vmw_collect_so_targets(9)vmw_emit_set_so_target(9)vmw_binding_emit_dirty_ps(9)vmw_collect_dirty_vbs(9)vmw_emit_set_vb(9)vmw_binding_emit_dirty(9)vmw_binding_scrub_sr(9)vmw_binding_scrub_dx_rt(9)vmw_binding_scrub_so_target(9)vmw_binding_scrub_vb(9)vmw_binding_scrub_ib(9)vmw_binding_scrub_so(9)vmw_binding_state_free(9)vmw_binding_state_list(9)vmw_binding_state_reset(9)vmw_binding_dirtying(9)
and yes obvs vmw_binding_state_free(9) is in there β you allocated it, bestie, so eventually you free it π«Ά
and that's the page!! π§ this little beauty comes to you from the Kernel API Manual, source path ./drivers/gpu/drm/vmwgfx, dated October 2026, and its header was literally just vmw_binding_state_alloc(9) twice because the man page layout said so π stay slay, go read vmw_binding_state_free(9) next, ily βπ
π¦ 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