anv: flush data cache before emitting availability
authorIván Briano <ivan.briano@intel.com>
Mon, 12 Jun 2023 23:38:31 +0000 (16:38 -0700)
committerMarge Bot <emma+marge@anholt.net>
Thu, 29 Jun 2023 22:11:35 +0000 (22:11 +0000)
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23814>

src/intel/vulkan/genX_query.c

index 07cbc78..7248fae 100644 (file)
@@ -1894,8 +1894,12 @@ genX(CmdWriteAccelerationStructuresPropertiesKHR)(
       }
    }
 
+   /* TODO: Figure out why MTL needs ANV_PIPE_DATA_CACHE_FLUSH_BIT in order
+    * to not lose the availability bit.
+    */
    anv_add_pending_pipe_bits(cmd_buffer,
-                             ANV_PIPE_END_OF_PIPE_SYNC_BIT,
+                             ANV_PIPE_END_OF_PIPE_SYNC_BIT |
+                             ANV_PIPE_DATA_CACHE_FLUSH_BIT,
                              "after write acceleration struct props");
    genX(cmd_buffer_apply_pipe_flushes)(cmd_buffer);