mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-05 16:08:04 +02:00
radeonsi: Destroy queues before the aux contexts
Otherwise the queue might access the already destroyed aux contexts
Signed-off-by: Sebastian Wick <sebastian.wick@redhat.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27300>
(cherry picked from commit c467a87e06)
This commit is contained in:
parent
9aaf3de90c
commit
2453b02a8f
2 changed files with 4 additions and 4 deletions
|
|
@ -344,7 +344,7 @@
|
|||
"description": "radeonsi: Destroy queues before the aux contexts",
|
||||
"nominated": true,
|
||||
"nomination_type": 0,
|
||||
"resolution": 0,
|
||||
"resolution": 1,
|
||||
"main_sha": null,
|
||||
"because_sha": null,
|
||||
"notes": null
|
||||
|
|
|
|||
|
|
@ -967,6 +967,9 @@ static void si_destroy_screen(struct pipe_screen *pscreen)
|
|||
|
||||
si_resource_reference(&sscreen->attribute_ring, NULL);
|
||||
|
||||
util_queue_destroy(&sscreen->shader_compiler_queue);
|
||||
util_queue_destroy(&sscreen->shader_compiler_queue_low_priority);
|
||||
|
||||
for (unsigned i = 0; i < ARRAY_SIZE(sscreen->aux_contexts); i++) {
|
||||
if (!sscreen->aux_contexts[i].ctx)
|
||||
continue;
|
||||
|
|
@ -989,9 +992,6 @@ static void si_destroy_screen(struct pipe_screen *pscreen)
|
|||
sscreen->async_compute_context->destroy(sscreen->async_compute_context);
|
||||
}
|
||||
|
||||
util_queue_destroy(&sscreen->shader_compiler_queue);
|
||||
util_queue_destroy(&sscreen->shader_compiler_queue_low_priority);
|
||||
|
||||
/* Release the reference on glsl types of the compiler threads. */
|
||||
glsl_type_singleton_decref();
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue