diff --git a/.pick_status.json b/.pick_status.json index 7a99f0d157f..542d8a270c9 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -94,7 +94,7 @@ "description": "radeonsi: fix a crash when failing to create a context", "nominated": true, "nomination_type": 1, - "resolution": 0, + "resolution": 1, "main_sha": null, "because_sha": "792a638b032d16fbe6404f9d90c34b3e0f1fb0b5" }, diff --git a/src/gallium/drivers/radeonsi/gfx10_query.c b/src/gallium/drivers/radeonsi/gfx10_query.c index a6aac5a49b3..9631f0dea3c 100644 --- a/src/gallium/drivers/radeonsi/gfx10_query.c +++ b/src/gallium/drivers/radeonsi/gfx10_query.c @@ -446,6 +446,9 @@ void gfx10_init_query(struct si_context *sctx) void gfx10_destroy_query(struct si_context *sctx) { + if (!sctx->shader_query_buffers.next) + return; + while (!list_is_empty(&sctx->shader_query_buffers)) { struct gfx10_sh_query_buffer *qbuf = list_first_entry(&sctx->shader_query_buffers, struct gfx10_sh_query_buffer, list);