From cd306105a11342987b712d8cc78d17c57849e8e3 Mon Sep 17 00:00:00 2001 From: Felix DeGrood Date: Fri, 29 Jan 2021 14:40:11 -0800 Subject: [PATCH] anv: Clear all pending stall after pipe flush Was only clearing CS stalls after emitting pending pipe controls. Need to clear all stalls. Cc: mesa-stable Reviewed-by: Lionel Landwerlin Part-of: (cherry picked from commit 1da9ff047e820a2295108534e075375ae00aa48a) --- .pick_status.json | 2 +- src/intel/vulkan/genX_cmd_buffer.c | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.pick_status.json b/.pick_status.json index e5053710c49..69f9de36091 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -895,7 +895,7 @@ "description": "anv: Clear all pending stall after pipe flush", "nominated": true, "nomination_type": 0, - "resolution": 0, + "resolution": 1, "main_sha": null, "because_sha": null }, diff --git a/src/intel/vulkan/genX_cmd_buffer.c b/src/intel/vulkan/genX_cmd_buffer.c index b6c349e199f..26d278826de 100644 --- a/src/intel/vulkan/genX_cmd_buffer.c +++ b/src/intel/vulkan/genX_cmd_buffer.c @@ -2150,7 +2150,7 @@ genX(cmd_buffer_apply_pipe_flushes)(struct anv_cmd_buffer *cmd_buffer) bits &= ~ANV_PIPE_POST_SYNC_BIT; } - if (bits & (ANV_PIPE_FLUSH_BITS | ANV_PIPE_CS_STALL_BIT | + if (bits & (ANV_PIPE_FLUSH_BITS | ANV_PIPE_STALL_BITS | ANV_PIPE_END_OF_PIPE_SYNC_BIT)) { anv_batch_emit(&cmd_buffer->batch, GENX(PIPE_CONTROL), pipe) { #if GFX_VER >= 12 @@ -2276,7 +2276,7 @@ genX(cmd_buffer_apply_pipe_flushes)(struct anv_cmd_buffer *cmd_buffer) } } - bits &= ~(ANV_PIPE_FLUSH_BITS | ANV_PIPE_CS_STALL_BIT | + bits &= ~(ANV_PIPE_FLUSH_BITS | ANV_PIPE_STALL_BITS | ANV_PIPE_END_OF_PIPE_SYNC_BIT); }