From f4f350a06c0144904131e78c9f8469d4ed828e8a Mon Sep 17 00:00:00 2001 From: Lionel Landwerlin Date: Wed, 27 Apr 2022 15:24:28 +0300 Subject: [PATCH] anv: reemit 3DSTATE_STREAMOUT after memcpy This doesn't fix anything because memcpy is only used before secondary buffer execution and we dirty everything after that. Signed-off-by: Lionel Landwerlin Reviewed-by: Jason Ekstrand Part-of: --- src/intel/vulkan/genX_gpu_memcpy.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/intel/vulkan/genX_gpu_memcpy.c b/src/intel/vulkan/genX_gpu_memcpy.c index af353ca69e1..53d0f9eb399 100644 --- a/src/intel/vulkan/genX_gpu_memcpy.c +++ b/src/intel/vulkan/genX_gpu_memcpy.c @@ -315,5 +315,9 @@ genX(cmd_buffer_so_memcpy)(struct anv_cmd_buffer *cmd_buffer, genX(cmd_buffer_update_dirty_vbs_for_gfx8_vb_flush)(cmd_buffer, SEQUENTIAL, 1ull << 32); - cmd_buffer->state.gfx.dirty |= ANV_CMD_DIRTY_PIPELINE; + /* Invalidate pipeline & raster discard since we touch + * 3DSTATE_STREAMOUT. + */ + cmd_buffer->state.gfx.dirty |= ANV_CMD_DIRTY_PIPELINE | + ANV_CMD_DIRTY_DYNAMIC_RASTERIZER_DISCARD_ENABLE; }