From 8ab3c03a320fbe69e68319a203ed2af21e419d18 Mon Sep 17 00:00:00 2001 From: Lionel Landwerlin Date: Thu, 21 Sep 2023 23:27:46 +0300 Subject: [PATCH] anv: fix generated draws gl_DrawID with more than 8192 indirect draws This applies only to Gfx9. We're writting out of bounds to a wrong location. Signed-off-by: Lionel Landwerlin Fixes: 1d9cf8f381 ("anv: add gfx9 generated draw support") Reviewed-by: Ivan Briano Tested-by: Felix DeGrood Part-of: --- src/intel/vulkan/shaders/gfx9_generated_draws.glsl | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/intel/vulkan/shaders/gfx9_generated_draws.glsl b/src/intel/vulkan/shaders/gfx9_generated_draws.glsl index b9624c9bfeb..265b100c5cd 100644 --- a/src/intel/vulkan/shaders/gfx9_generated_draws.glsl +++ b/src/intel/vulkan/shaders/gfx9_generated_draws.glsl @@ -71,7 +71,7 @@ void main() } if (uses_drawid) { uint64_t draw_idx_addr = draw_id_addr + 4 * item_idx; - draw_ids[draw_id] = draw_id; + draw_ids[item_idx] = draw_id; write_VERTEX_BUFFER_STATE(cmd_idx, mocs, 32, @@ -117,7 +117,7 @@ void main() } if (uses_drawid) { uint64_t draw_idx_addr = draw_id_addr + 4 * item_idx; - draw_ids[draw_id] = draw_id; + draw_ids[item_idx] = draw_id; write_VERTEX_BUFFER_STATE(cmd_idx, mocs, 32,