anv: fixup another dirty issue with gpu_memcpy
authorLionel Landwerlin <lionel.g.landwerlin@intel.com>
Thu, 15 Dec 2022 12:18:38 +0000 (14:18 +0200)
committerEric Engestrom <eric@engestrom.ch>
Thu, 29 Dec 2022 19:25:29 +0000 (19:25 +0000)
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Cc: mesa-stable
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20335>
(cherry picked from commit b21cd1ee1ba85065b27bf71a7d3b8498dcdd6b76)

.pick_status.json
src/intel/vulkan/genX_gpu_memcpy.c

index db4237f..31959ef 100644 (file)
         "description": "anv: fixup another dirty issue with gpu_memcpy",
         "nominated": true,
         "nomination_type": 0,
-        "resolution": 0,
+        "resolution": 1,
         "main_sha": null,
         "because_sha": null
     },
index a2b67ca..42242f0 100644 (file)
@@ -306,10 +306,11 @@ genX(cmd_buffer_so_memcpy)(struct anv_cmd_buffer *cmd_buffer,
                                                        1ull << 32);
 #endif
 
-   /* Invalidate pipeline & raster discard since we touch
-    * 3DSTATE_STREAMOUT.
+   /* Invalidate pipeline, xfb (for 3DSTATE_SO_BUFFER) & raster discard (for
+    * 3DSTATE_STREAMOUT).
     */
-   cmd_buffer->state.gfx.dirty |= ANV_CMD_DIRTY_PIPELINE;
+   cmd_buffer->state.gfx.dirty |= (ANV_CMD_DIRTY_PIPELINE |
+                                   ANV_CMD_DIRTY_XFB_ENABLE);
    BITSET_SET(cmd_buffer->vk.dynamic_graphics_state.dirty,
               MESA_VK_DYNAMIC_RS_RASTERIZER_DISCARD_ENABLE);
 }