From c912f80a08a6397da2d34364c786ae7cc52267a0 Mon Sep 17 00:00:00 2001 From: Boris Brezillon Date: Tue, 18 Jun 2024 09:23:55 +0200 Subject: [PATCH] panvk: Constify the shader pointers in the graphics state The command buffer logic is not supposed to modify these objects. Signed-off-by: Boris Brezillon Reviewed-by: Mary Guillemard Part-of: --- src/panfrost/vulkan/jm/panvk_cmd_buffer.h | 4 ++-- src/panfrost/vulkan/panvk_shader.h | 4 ++-- src/panfrost/vulkan/panvk_vX_shader.c | 3 ++- 3 files changed, 6 insertions(+), 5 deletions(-) diff --git a/src/panfrost/vulkan/jm/panvk_cmd_buffer.h b/src/panfrost/vulkan/jm/panvk_cmd_buffer.h index 915c29d38f2..0cd246ea5c9 100644 --- a/src/panfrost/vulkan/jm/panvk_cmd_buffer.h +++ b/src/panfrost/vulkan/jm/panvk_cmd_buffer.h @@ -96,7 +96,7 @@ struct panvk_cmd_graphics_state { bool linked; struct { - struct panvk_shader *shader; + const struct panvk_shader *shader; mali_ptr rsd; #if PAN_ARCH <= 7 struct panvk_shader_desc_state desc; @@ -104,7 +104,7 @@ struct panvk_cmd_graphics_state { } fs; struct { - struct panvk_shader *shader; + const struct panvk_shader *shader; mali_ptr attribs; mali_ptr attrib_bufs; #if PAN_ARCH <= 7 diff --git a/src/panfrost/vulkan/panvk_shader.h b/src/panfrost/vulkan/panvk_shader.h index fafb77c6620..1a92e1f3ae2 100644 --- a/src/panfrost/vulkan/panvk_shader.h +++ b/src/panfrost/vulkan/panvk_shader.h @@ -156,8 +156,8 @@ panvk_shader_get_dev_addr(const struct panvk_shader *shader) } void panvk_per_arch(link_shaders)(struct panvk_pool *desc_pool, - struct panvk_shader *vs, - struct panvk_shader *fs, + const struct panvk_shader *vs, + const struct panvk_shader *fs, struct panvk_shader_link *link); static inline void diff --git a/src/panfrost/vulkan/panvk_vX_shader.c b/src/panfrost/vulkan/panvk_vX_shader.c index a551703cac4..bd376e92637 100644 --- a/src/panfrost/vulkan/panvk_vX_shader.c +++ b/src/panfrost/vulkan/panvk_vX_shader.c @@ -1049,7 +1049,8 @@ emit_varying_attrs(struct panvk_pool *desc_pool, void panvk_per_arch(link_shaders)(struct panvk_pool *desc_pool, - struct panvk_shader *vs, struct panvk_shader *fs, + const struct panvk_shader *vs, + const struct panvk_shader *fs, struct panvk_shader_link *link) { BITSET_DECLARE(active_attrs, VARYING_SLOT_MAX) = {0};