STRUCT VMW_VIEW(9)
π struct vmw_view(9) π
okay so this is the page for struct vmw_view(9), straight out of the Kernel API Manual, and bestie it's literally just the metadata for a view. that's it. that's the whole vibe. let's get into it π«Ά
β¨ NAME β¨
struct vmw_view β view metadata π
π¦ SYNOPSIS π¦
struct vmw_view {
struct rcu_head rcu;
struct vmw_resource res;
struct vmw_resource *ctx;
struct vmw_resource *srf;
struct vmw_resource *cotable;
struct list_head srf_head;
struct list_head cotable_head;
unsigned view_type;
unsigned view_id;
u32 cmd_size;
bool committed;
u32 cmd[];
};
like, look at her. she's gorgeous. she's a struct. π
π Members π
rcuβ the RCU callback head. it's giving "i call back later" πresβ thestruct vmw_resourcethat we derive from. our origin story, fr fr.ctxβ a non-refcounted pointer to the context this view belongs to. note: non-refcounted, so no, she's not holding a reference for you πsrfβ a refcounted pointer to the surface that this view points to. this one does hold a ref, so slay.cotableβ a refcounted pointer to the cotable that holds this view. also refcounted. also iconic.srf_headβ the list head for the surface-to-view list. π¦cotable_headβ the list head for the cotable-to-view list. π¦ (yes the original really writes it ascotable-to_viewwith that little underscore moment β not me fixing it, i would never π)view_typeβ the view type. short king of a description, we love it.view_idβ the user-space per context view id. currently used also as the per context device view id β iykyk πcmd_sizeβ the size of the SVGA3D define view command that we've copied from the command stream. yes, we copy it. it's ours now βcommittedβ whether the view is actually created, or still pending creation, at the device level. the "are we official or are we just talking" flag πcmdβ the SVGA3D define view command copied from the command stream. again: copied. from. the. command. stream. no cap. π₯
πΈ SEE ALSO πΈ
kernel file ./drivers/gpu/drm/vmwgfx/vmwgfx_so.c and honestly the whole friend group:
struct vmw_view_define(9)vmw_view(9)vmw_view_commit_notify(9)vmw_view_create(9)vmw_view_destroy(9)vmw_hw_view_destroy(9)vmw_view_key(9)vmw_view_id_ok(9)vmw_view_res_free(9)vmw_view_add(9)vmw_view_remove(9)vmw_view_cotable_list_destroy(9)vmw_view_surface_list_destroy(9)vmw_view_srf(9)vmw_view_lookup(9)vmw_view_dirtying(9)
ok that's the whole page bestie, go read the other ones too, they're all in the group chat π
and that's a wrap!! this lil page lives in ./drivers/gpu/drm/vmwgfx and the version we're all looking at is dated October 2026 β screenshot it, pin it, memorize it, periodt. π§π
π¦ 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