radeonsi: don't wait for shader compilation to finish when destroying a context
authorMarek Olšák <marek.olsak@amd.com>
Wed, 12 Feb 2020 19:55:27 +0000 (14:55 -0500)
committerMarek Olšák <marek.olsak@amd.com>
Fri, 14 Feb 2020 21:19:38 +0000 (16:19 -0500)
This was a hack for glsl_types deinitialization and it predates the proper
fix, which was the addition of glsl_type_singleton_decref.

This fixes a crash when the context is destroyed via the atexit handler.

Cc: 19.3 20.0 <mesa-stable@lists.freedesktop.org>
Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com>
Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3800>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3800>

src/gallium/drivers/radeonsi/si_pipe.c

index cb96645b9d27220915c77a73eb23208b2f8595f4..ea4f1bf20b6fb68eb559c0653eed12cc4aa0b25a 100644 (file)
@@ -172,9 +172,6 @@ static void si_destroy_context(struct pipe_context *context)
        struct si_context *sctx = (struct si_context *)context;
        int i;
 
-       util_queue_finish(&sctx->screen->shader_compiler_queue);
-       util_queue_finish(&sctx->screen->shader_compiler_queue_low_priority);
-
        /* Unreference the framebuffer normally to disable related logic
         * properly.
         */