vmw_cmd_update_gb_surface(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… vmw_cmd_update_gb_surface(9) β€” kernel API manual, but make it make sense

okay so bestie, we're in the kernel API manual today (yes, the kernel kernel, like 9 section, driver-land) and the star of the show is vmw_cmd_update_gb_surface. Say it with me: vmw_cmd_update_gb_surface. Iconic. It does exactly one job and it does it with main character energy β€” it validates the SVGA_3D_CMD_UPDATE_GB_SURFACE command. That's the whole vibe. Validation. Periodt. ✨


πŸ¦‹ NAME πŸ¦‹

vmw_cmd_update_gb_surface β€” validate SVGA_3D_CMD_UPDATE_GB_SURFACE command. That's it, that's the function, and honestly? She's serving "one job, done well." πŸ’…


🌸 SYNOPSIS 🌸

int vmw_cmd_update_gb_surface (struct vmw_private *dev_priv , struct
vmw_sw_context *sw_context , SVGA3dCmdHeader *header );

Three args, one int coming back at you. Copy it exactly, don't get creative with the spacing, the compiler does not care about your aesthetic. πŸŽ€


πŸ’– ARGUMENTS πŸ’–

  • dev_priv β€” a pointer to a device private struct. Your device's whole personality lives in here, and she's private for a reason. πŸ™ˆ
  • sw_context β€” the software context being used for this batch. Yes, this batch. Every batch gets its own, no sharing, we don't do that here. 🫢
  • header β€” a pointer to the command header in the command stream. It's giving "I'm the beginning of the story and everything after me is plot." πŸ‘‘

πŸ”₯ SEE ALSO πŸ”₯

Kernel file ./drivers/gpu/drm/vmwgfx/vmwgfx_execbuf.c β€” that's the neighborhood, go say hi. 🏑

And now the friend group, the whole group chat, everybody who's ever been in the group chat:

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_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_submit_cmdbuf(9), vmw_execbuf_cmdbuf(9), vmw_execbuf_unpin_panic(9), __vmw_execbuf_release_pinned_bo(9), vmw_execbuf_release_pinned_bo(9)

Like I said. The whole group chat. Read every single one, bestie, they're all linked and they all matter. iykyk 🌈


ngl the whole page is short and that's kind of the point β€” validate the command, log off, hydrate. πŸ’œ

and that's the tea πŸ“ β€” this page lives in ./drivers/gpu/drm/vmwgfx and it's dated October 2026, so yes, she's from the future and she's still validating. byeee πŸ§šπŸ’–

πŸ“¦ where this page comes from