From ec1fcf92ae7e445d74e69f6973041fd12112b1fa Mon Sep 17 00:00:00 2001 From: Andres Rodriguez Date: Tue, 25 Sep 2018 02:30:34 -0400 Subject: [PATCH] radv: only emit ZPASS_DONE for timestamp queries on gfx queues A ZPASS_DONE packet doesn't make sense for the compute queue. It will result in a gpu hang. This change resolves a gpu hang for SteamVR+Vega. Cc: mesa-stable@lists.freedesktop.org Fixes: 1f616a840eac02241c585d28e9dac8f19a297f39 "radv: emit a dummy ..." Signed-off-by: Andres Rodriguez Reviewed-by: Dave Airlie --- src/amd/vulkan/si_cmd_buffer.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/amd/vulkan/si_cmd_buffer.c b/src/amd/vulkan/si_cmd_buffer.c index 7ff1717022d..e5bc151f64b 100644 --- a/src/amd/vulkan/si_cmd_buffer.c +++ b/src/amd/vulkan/si_cmd_buffer.c @@ -683,7 +683,7 @@ void si_cs_emit_write_event_eop(struct radeon_cmdbuf *cs, * counters) must immediately precede every timestamp event to * prevent a GPU hang on GFX9. */ - if (chip_class == GFX9) { + if (chip_class == GFX9 && !is_mec) { radeon_emit(cs, PKT3(PKT3_EVENT_WRITE, 2, 0)); radeon_emit(cs, EVENT_TYPE(EVENT_TYPE_ZPASS_DONE) | EVENT_INDEX(1)); radeon_emit(cs, gfx9_eop_bug_va); -- 2.30.2