From 3359386145d0cd5c5392c03ff5474a1d8b852fdb Mon Sep 17 00:00:00 2001 From: Samuel Pitoiset Date: Wed, 13 Aug 2025 08:32:03 +0200 Subject: [PATCH] radv: fix reserving space for emitting push constants with DGC IES layout->push_constant_mask is only the DGC push constant mask (ie. the tokens that are specified), but with IES all push constants are emitted from the DGC shader. So it should be the total range of push constant. This used to work by luck due to the preprocess buffer alignment. Cc: mesa-stable Signed-off-by: Samuel Pitoiset Part-of: --- src/amd/vulkan/radv_dgc.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/amd/vulkan/radv_dgc.c b/src/amd/vulkan/radv_dgc.c index 172f438d155..f9effcd629c 100644 --- a/src/amd/vulkan/radv_dgc.c +++ b/src/amd/vulkan/radv_dgc.c @@ -393,7 +393,7 @@ radv_get_sequence_size(const struct radv_indirect_command_layout *layout, const *cmd_size += 3 * 4; need_copy = true; - *cmd_size += (3 * util_bitcount64(layout->push_constant_mask)) * 4; + *cmd_size += (3 * (pipeline_layout->push_constant_size / 4)) * 4; } else { struct radv_shader *shaders[MESA_VULKAN_SHADER_STAGES] = {0}; if (pipeline_info) {