vmw_cmd_res_check(9)
π vmw_cmd_res_check β the kernel-API manual, but make it make sense π
okay so bestie, welcome to the vmw_cmd_res_check(9) page from the Kernel API Manual π
this one's a lil kernel-side helper that does exactly one (1) job and honestly? it ate. let's get into it β¨
β¨ NAME β¨
vmw_cmd_res_check β check that a resource is present, and if it is, put it on the resource validate list unless it's already there. that's it, that's the whole vibe π«Ά
πΈ SYNOPSIS πΈ
int vmw_cmd_res_check (struct vmw_private *dev_priv , struct
vmw_sw_context *sw_context , enum vmw_res_type res_type , u32 dirty ,
const struct vmw_user_resource_conv *converter , uint32_t *id_loc ,
struct vmw_resource **p_res );
π¦ ARGUMENTS π¦
dev_privβ pointer to a device private structure. the main character of the device world, lowkey πsw_contextβ pointer to the software context. yes queen, the software one πres_typeβ resource type. which flavor of resource are we talking about πdirtyβ whether to change dirty status. do we touch the dirty bit or nah, that's the question πconverterβ user-space visible type specific information. the little translation layer for the userspace girlies β¨id_locβ pointer to the location in the command buffer currently being parsed, from where the user-space resource id handle is located. like, where in the buffer are we rn πp_resβ pointer to pointer to the resource validation node. it gets populated on exit, so it's giving "I'll fill you in later" energy π
π₯ SEE ALSO π₯
okay this list is LONG, like genuinely iconic levels of cross-referencing, but every single one matters so here we go, no skips, fr fr:
the kernel file is ./drivers/gpu/drm/vmwgfx/vmwgfx_execbuf.c, and it hangs out with:
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_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_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. iconic. read them all, iykyk π
ngl bestie, the whole point is: resource present? cool, onto the validate list it goes β unless it's already chillin' there, in which case we leave it be. no double-dipping in the validate list, periodt π
and that's the page!! source/version: ./drivers/gpu/drm/vmwgfx, dated October 2026 ποΈπ go forth and validate those resources, bestie β you've got this, fr fr πβπ«Ά
π¦ 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