From d5157356ceffad6161ccc773cd6a3a9219f6b4e0 Mon Sep 17 00:00:00 2001 From: Mike Blumenkrantz Date: Tue, 22 Aug 2023 12:14:27 -0400 Subject: [PATCH] zink: don't start multiple cache jobs for the same program if there's already a cache job in flight then starting a second one is illegal cc: mesa-stable Part-of: --- src/gallium/drivers/zink/zink_screen.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gallium/drivers/zink/zink_screen.c b/src/gallium/drivers/zink/zink_screen.c index 11bc6c519d5..98fea1426f2 100644 --- a/src/gallium/drivers/zink/zink_screen.c +++ b/src/gallium/drivers/zink/zink_screen.c @@ -366,7 +366,7 @@ zink_screen_update_pipeline_cache(struct zink_screen *screen, struct zink_progra if (in_thread) cache_put_job(pg, screen, 0); - else + else if (util_queue_fence_is_signalled(&pg->cache_fence)) util_queue_add_job(&screen->cache_put_thread, pg, &pg->cache_fence, cache_put_job, NULL, 0); }