[Mesa-dev] [PATCH 8/9] Revert "radeonsi: fix potential use-after-free of debug callbacks"

Marek Olšák maraeo at gmail.com
Tue Apr 17 00:52:19 UTC 2018


From: Marek Olšák <marek.olsak at amd.com>

This reverts commit b650fc09c3a35ca624aad5fe4b5c34867708f116.

There is a 100%-reproducible deadlock if I increase the number of compiler
queues.

Also:
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=105379

Cc: 18.0 <mesa-stable at lists.freedesktop.org>
---
 src/gallium/drivers/radeonsi/si_pipe.c | 4 ----
 1 file changed, 4 deletions(-)

diff --git a/src/gallium/drivers/radeonsi/si_pipe.c b/src/gallium/drivers/radeonsi/si_pipe.c
index 490a090da87..f1f1e3ad890 100644
--- a/src/gallium/drivers/radeonsi/si_pipe.c
+++ b/src/gallium/drivers/radeonsi/si_pipe.c
@@ -353,24 +353,20 @@ static void si_emit_string_marker(struct pipe_context *ctx,
 	dd_parse_apitrace_marker(string, len, &sctx->apitrace_call_number);
 
 	if (sctx->log)
 		u_log_printf(sctx->log, "\nString marker: %*s\n", len, string);
 }
 
 static void si_set_debug_callback(struct pipe_context *ctx,
 				  const struct pipe_debug_callback *cb)
 {
 	struct si_context *sctx = (struct si_context *)ctx;
-	struct si_screen *screen = sctx->screen;
-
-	util_queue_finish(&screen->shader_compiler_queue);
-	util_queue_finish(&screen->shader_compiler_queue_low_priority);
 
 	if (cb)
 		sctx->debug = *cb;
 	else
 		memset(&sctx->debug, 0, sizeof(sctx->debug));
 }
 
 static void si_set_log_context(struct pipe_context *ctx,
 			       struct u_log_context *log)
 {
-- 
2.17.0



More information about the mesa-dev mailing list