From 827ae79b2c6cf53e26b3467e4c3965ce6acab3c6 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Mon, 20 Mar 2017 16:39:02 +0100 Subject: [PATCH] radeonsi: check the IR type before waiting for a compute compilation fence This should fix OpenCL getting stuck. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=100288 Reviewed-by: Samuel Pitoiset --- src/gallium/drivers/radeonsi/si_compute.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/radeonsi/si_compute.c b/src/gallium/drivers/radeonsi/si_compute.c index ed02f4930f8..19a9189e739 100644 --- a/src/gallium/drivers/radeonsi/si_compute.c +++ b/src/gallium/drivers/radeonsi/si_compute.c @@ -746,7 +746,9 @@ static void si_launch_grid( sctx->b.flags |= SI_CONTEXT_PS_PARTIAL_FLUSH | SI_CONTEXT_CS_PARTIAL_FLUSH; - util_queue_fence_wait(&program->ready); + if (program->ir_type == PIPE_SHADER_IR_TGSI) + util_queue_fence_wait(&program->ready); + si_decompress_compute_textures(sctx); /* Add buffer sizes for memory checking in need_cs_space. */ -- 2.30.2