From 9dd49e7a63dc67b72fe73aca5178e185bbb4f449 Mon Sep 17 00:00:00 2001 From: Rohan Garg Date: Thu, 16 Nov 2023 13:43:33 +0100 Subject: [PATCH] anv: memcpy the thread dimentions only when they're on the CPU Signed-off-by: Rohan Garg Reviewed-by: Lionel Landwerlin Part-of: --- src/intel/vulkan/genX_cmd_buffer.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/intel/vulkan/genX_cmd_buffer.c b/src/intel/vulkan/genX_cmd_buffer.c index c9e38e7e757..1f186156de4 100644 --- a/src/intel/vulkan/genX_cmd_buffer.c +++ b/src/intel/vulkan/genX_cmd_buffer.c @@ -6178,6 +6178,7 @@ genX(cmd_buffer_dispatch_kernel)(struct anv_cmd_buffer *cmd_buffer, if (global_size != NULL) { for (unsigned i = 0; i < 3; i++) sysvals.num_work_groups[i] = global_size[i]; + memcpy(indirect_data.map, &sysvals, sizeof(sysvals)); } else { struct anv_address sysvals_addr = { .bo = NULL, /* General state buffer is always 0. */ @@ -6187,8 +6188,6 @@ genX(cmd_buffer_dispatch_kernel)(struct anv_cmd_buffer *cmd_buffer, compute_store_indirect_params(cmd_buffer, sysvals_addr); } - memcpy(indirect_data.map, &sysvals, sizeof(sysvals)); - void *args_map = indirect_data.map + sizeof(sysvals); for (unsigned i = 0; i < kernel->bin->bind_map.kernel_arg_count; i++) { struct brw_kernel_arg_desc *arg_desc =