STRUCT VC4_VALIDATED_SHADER_INFO(9)
π struct vc4_validated_shader_info(9) π
okay so real talk, this one lives in the Kernel API Manual, section 9 β yes bestie, the kernel one, we're in the drivers today π«Ά
β¨ NAME β¨
struct vc4_validated_shader_info β it's literally the info about validated shaders that needs to be used from command list validation π
like that's the whole gig, no cap.
πΈ SYNOPSIS πΈ
struct vc4_validated_shader_info {
uint32_t uniforms_size;
uint32_t uniforms_src_size;
uint32_t num_texture_samples;
struct vc4_texture_sample_info *texture_samples;
uint32_t num_uniform_addr_offsets;
uint32_t *uniform_addr_offsets;
bool is_threaded;
};
look at her. seven members. absolute main character energy π
π Members π
so the original page says "Members" and thenβ¦ nothing. no field-by-field breakdown, no little one-liners per member. it's giving mysterious π so here's the struct again, field names exactly as they are, and that's all we've got:
uint32_t uniforms_sizeuint32_t uniforms_src_sizeuint32_t num_texture_samplesstruct vc4_texture_sample_info *texture_samplesuint32_t num_uniform_addr_offsetsuint32_t *uniform_addr_offsetsbool is_threaded
π¦ Description π¦
okay so picture this: for a given shader, every single time a shader state record references it, there's two things we gotta do, and we gotta do them every time, fr fr:
- verify that the shader doesn't read more uniforms than the shader state record's uniform BO pointer can actually provide π
- apply relocations and validate the shader state record's uniforms that define the texture samples β¨
that's it. that's the vibe check this struct is built for. lowkey important, highkey doing a lot of work π
π SEE ALSO π
- Kernel file
./drivers/gpu/drm/vc4/vc4_drv.h struct vc4_texture_sample_info(9)__wait_for(9)
quick reminder bestie: this page is courtesy of ./drivers/gpu/drm/vc4 and it's dated October 2026, so likeβ¦ mark your calendars π
and that's the whole struct vc4_validated_shader_info(9) page!! read her, love her, validate those shaders responsibly π§π
π¦ 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