STRUCT VC4_VALIDATED_SHADER_INFO(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– 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_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

πŸ¦‹ 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:

  1. verify that the shader doesn't read more uniforms than the shader state record's uniform BO pointer can actually provide 😭
  2. 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