Module: Mesa
Branch: main
Commit: 9dd49e7a63dc67b72fe73aca5178e185bbb4f449
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=9dd49e7a63dc67b72fe73aca5178e185bbb4f449

Author: Rohan Garg <rohan.g...@intel.com>
Date:   Thu Nov 16 13:43:33 2023 +0100

anv: memcpy the thread dimentions only when they're on the CPU

Signed-off-by: Rohan Garg <rohan.g...@intel.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwer...@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26421>

---

 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 =

Reply via email to