From e241b405ca3d9da5167af2f224520227a9a5377e Mon Sep 17 00:00:00 2001 From: =?utf8?q?Nicolai=20H=C3=A4hnle?= Date: Thu, 20 Sep 2018 10:19:30 +0200 Subject: [PATCH] radeonsi: pass the context to query destroy functions We'll need this in the future. Acked-by: Bas Nieuwenhuizen --- src/gallium/drivers/radeonsi/si_perfcounter.c | 6 +++--- src/gallium/drivers/radeonsi/si_query.c | 11 +++++------ src/gallium/drivers/radeonsi/si_query.h | 4 ++-- 3 files changed, 10 insertions(+), 11 deletions(-) diff --git a/src/gallium/drivers/radeonsi/si_perfcounter.c b/src/gallium/drivers/radeonsi/si_perfcounter.c index 75bd61730da..d073b5821fb 100644 --- a/src/gallium/drivers/radeonsi/si_perfcounter.c +++ b/src/gallium/drivers/radeonsi/si_perfcounter.c @@ -749,7 +749,7 @@ static void si_pc_emit_read(struct si_context *sctx, } } -static void si_pc_query_destroy(struct si_screen *sscreen, +static void si_pc_query_destroy(struct si_context *sctx, struct si_query *squery) { struct si_query_pc *query = (struct si_query_pc *)squery; @@ -762,7 +762,7 @@ static void si_pc_query_destroy(struct si_screen *sscreen, FREE(query->counters); - si_query_buffer_destroy(sscreen, &query->buffer); + si_query_buffer_destroy(sctx->screen, &query->buffer); FREE(query); } @@ -1100,7 +1100,7 @@ struct pipe_query *si_create_batch_query(struct pipe_context *ctx, return (struct pipe_query *)query; error: - si_pc_query_destroy(screen, &query->b); + si_pc_query_destroy((struct si_context *)ctx, &query->b); return NULL; } diff --git a/src/gallium/drivers/radeonsi/si_query.c b/src/gallium/drivers/radeonsi/si_query.c index fabb7544047..ae6498e1895 100644 --- a/src/gallium/drivers/radeonsi/si_query.c +++ b/src/gallium/drivers/radeonsi/si_query.c @@ -58,12 +58,12 @@ struct si_query_sw { struct pipe_fence_handle *fence; }; -static void si_query_sw_destroy(struct si_screen *sscreen, +static void si_query_sw_destroy(struct si_context *sctx, struct si_query *squery) { struct si_query_sw *query = (struct si_query_sw *)squery; - sscreen->b.fence_reference(&sscreen->b, &query->fence, NULL); + sctx->b.screen->fence_reference(sctx->b.screen, &query->fence, NULL); FREE(query); } @@ -624,12 +624,11 @@ bool si_query_buffer_alloc(struct si_context *sctx, struct si_query_buffer *buff } -void si_query_hw_destroy(struct si_screen *sscreen, - struct si_query *squery) +void si_query_hw_destroy(struct si_context *sctx, struct si_query *squery) { struct si_query_hw *query = (struct si_query_hw *)squery; - si_query_buffer_destroy(sscreen, &query->buffer); + si_query_buffer_destroy(sctx->screen, &query->buffer); si_resource_reference(&query->workaround_buf, NULL); FREE(squery); } @@ -1105,7 +1104,7 @@ static void si_destroy_query(struct pipe_context *ctx, struct pipe_query *query) struct si_context *sctx = (struct si_context *)ctx; struct si_query *squery = (struct si_query *)query; - squery->ops->destroy(sctx->screen, squery); + squery->ops->destroy(sctx, squery); } static boolean si_begin_query(struct pipe_context *ctx, diff --git a/src/gallium/drivers/radeonsi/si_query.h b/src/gallium/drivers/radeonsi/si_query.h index c1918f4df2d..82e5e25ed00 100644 --- a/src/gallium/drivers/radeonsi/si_query.h +++ b/src/gallium/drivers/radeonsi/si_query.h @@ -125,7 +125,7 @@ enum { }; struct si_query_ops { - void (*destroy)(struct si_screen *, struct si_query *); + void (*destroy)(struct si_context *, struct si_query *); bool (*begin)(struct si_context *, struct si_query *); bool (*end)(struct si_context *, struct si_query *); bool (*get_result)(struct si_context *, @@ -214,7 +214,7 @@ struct si_query_hw { unsigned workaround_offset; }; -void si_query_hw_destroy(struct si_screen *sscreen, +void si_query_hw_destroy(struct si_context *sctx, struct si_query *squery); bool si_query_hw_begin(struct si_context *sctx, struct si_query *squery); -- 2.30.2