vmw_execbuf_submit_cmdbuf(9)
okay bestie, welcome to vmw_execbuf_submit_cmdbuf(9) in the Kernel API Manual β this is the page about patching a command batch and submitting it through the command buffer manager β¨. No cap, it's a little niche, but we're gonna make it make sense π«Ά.
π NAME π
vmw_execbuf_submit_cmdbuf β patches up a command batch, then submits that batch through the command buffer manager. That's the whole main-character job π
.
β¨ SYNOPSIS β¨
int vmw_execbuf_submit_cmdbuf (struct vmw_private *dev_priv , struct
vmw_cmdbuf_header *header , u32 command_size , struct vmw_sw_context
*sw_context );
π ARGUMENTS π
dev_privβ a pointer to the device private structure. It's giving "device's own little info hub" energy π .headerβ the opaque handle to the command buffer allocation. Opaque means we don't stare directly at its internals, bestie β we just pass the handle along π.command_sizeβ the size of the unpatched command batch. Pre-patch size, for the record π.sw_contextβ the structure that holds the relocation lists. It's carrying the relocation-list cargo π.
π¦ DESCRIPTION π¦
Real talk: this function has side effects. If it returns 0, then the command buffer represented by header will have been modified. That's the vibe check: 0 means the header-represented command buffer got changed π
.
π SEE ALSO π
The kernel file for this one is ./drivers/gpu/drm/vmwgfx/vmwgfx_execbuf.c β iconic. And here's the whole friend group of related symbols, all exact and accounted for π«Ά:
struct vmw_relocation(9)enum vmw_resource_relocation_type(9)struct vmw_resource_relocation(9)struct vmw_ctx_validation_info(9)struct vmw_cmd_entry(9)vmw_ptr_diff(9)vmw_execbuf_bindings_commit(9)vmw_bind_dx_query_mob(9)vmw_cmd_ctx_first_setup(9)vmw_execbuf_res_size(9)vmw_execbuf_rcache_update(9)vmw_execbuf_res_val_add(9)vmw_view_res_val_add(9)vmw_view_id_val_add(9)vmw_resource_context_res_add(9)vmw_resource_relocation_add(9)vmw_resource_relocations_free(9)vmw_resource_relocations_apply(9)vmw_resources_reserve(9)vmw_cmd_res_check(9)vmw_rebind_all_dx_query(9)vmw_rebind_contexts(9)vmw_view_bindings_add(9)vmw_cmd_cid_check(9)vmw_execbuf_info_from_res(9)vmw_query_bo_switch_prepare(9)vmw_query_bo_switch_commit(9)vmw_translate_mob_ptr(9)vmw_translate_guest_ptr(9)vmw_cmd_dx_define_query(9)vmw_cmd_dx_bind_query(9)vmw_cmd_begin_gb_query(9)vmw_cmd_begin_query(9)vmw_cmd_end_gb_query(9)vmw_cmd_end_query(9)vmw_cmd_wait_gb_query(9)vmw_cmd_wait_query(9)vmw_cmd_res_switch_backup(9)vmw_cmd_switch_backup(9)vmw_cmd_bind_gb_surface(9)vmw_cmd_update_gb_image(9)vmw_cmd_update_gb_surface(9)vmw_cmd_readback_gb_image(9)vmw_cmd_readback_gb_surface(9)vmw_cmd_invalidate_gb_image(9)vmw_cmd_invalidate_gb_surface(9)vmw_cmd_shader_define(9)vmw_cmd_shader_destroy(9)vmw_cmd_set_shader(9)vmw_cmd_set_shader_const(9)vmw_cmd_bind_gb_shader(9)vmw_cmd_dx_set_single_constant_buffer(9)vmw_cmd_dx_set_constant_buffer_offset(9)vmw_cmd_dx_set_shader_res(9)vmw_cmd_dx_set_shader(9)vmw_cmd_dx_set_vertex_buffers(9)vmw_cmd_dx_set_index_buffer(9)vmw_cmd_dx_set_rendertargets(9)vmw_cmd_dx_clear_rendertarget_view(9)vmw_cmd_dx_clear_depthstencil_view(9)vmw_cmd_dx_set_so_targets(9)vmw_cmd_dx_check_subresource(9)vmw_cmd_dx_view_remove(9)vmw_cmd_dx_define_shader(9)vmw_cmd_dx_destroy_shader(9)vmw_cmd_dx_bind_shader(9)vmw_cmd_dx_genmips(9)vmw_cmd_dx_transfer_from_buffer(9)vmw_cmd_intra_surface_copy(9)vmw_execbuf_copy_fence_user(9)vmw_execbuf_submit_fifo(9)vmw_execbuf_cmdbuf(9)vmw_execbuf_unpin_panic(9)__vmw_execbuf_release_pinned_bo(9)vmw_execbuf_release_pinned_bo(9)
okay that's the whole page, bestie! source/version: ./drivers/gpu/drm/vmwgfx; date: October 2026; manual: Kernel API Manual; page: vmw_execbuf_submit_cmdbuf(9). byeeee ππ§
π¦ 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