From 13b9d32fb1d846b207f330140b53bda3047ee3af Mon Sep 17 00:00:00 2001 From: Rob Clark Date: Mon, 30 Jul 2018 08:38:28 -0400 Subject: [PATCH] freedreno: move free() into fdN_context_destroy() Following patches will be doing further cleanup after calling fd_context_destroy() so it is easier if we move the free() into the per-gen backend code. Signed-off-by: Rob Clark --- src/gallium/drivers/freedreno/a2xx/fd2_context.c | 1 + src/gallium/drivers/freedreno/a3xx/fd3_context.c | 2 ++ src/gallium/drivers/freedreno/a4xx/fd4_context.c | 2 ++ src/gallium/drivers/freedreno/a5xx/fd5_context.c | 2 ++ src/gallium/drivers/freedreno/freedreno_context.c | 2 -- 5 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/gallium/drivers/freedreno/a2xx/fd2_context.c b/src/gallium/drivers/freedreno/a2xx/fd2_context.c index 4f6e432c965..71fc17bab91 100644 --- a/src/gallium/drivers/freedreno/a2xx/fd2_context.c +++ b/src/gallium/drivers/freedreno/a2xx/fd2_context.c @@ -41,6 +41,7 @@ static void fd2_context_destroy(struct pipe_context *pctx) { fd_context_destroy(pctx); + free(pctx); } static struct pipe_resource * diff --git a/src/gallium/drivers/freedreno/a3xx/fd3_context.c b/src/gallium/drivers/freedreno/a3xx/fd3_context.c index 3623b9cf773..bb9dd2893e7 100644 --- a/src/gallium/drivers/freedreno/a3xx/fd3_context.c +++ b/src/gallium/drivers/freedreno/a3xx/fd3_context.c @@ -55,6 +55,8 @@ fd3_context_destroy(struct pipe_context *pctx) fd_hw_query_fini(pctx); fd_context_destroy(pctx); + + free(fd3_ctx); } static const uint8_t primtypes[] = { diff --git a/src/gallium/drivers/freedreno/a4xx/fd4_context.c b/src/gallium/drivers/freedreno/a4xx/fd4_context.c index 1f5546d2368..12505e83a6c 100644 --- a/src/gallium/drivers/freedreno/a4xx/fd4_context.c +++ b/src/gallium/drivers/freedreno/a4xx/fd4_context.c @@ -55,6 +55,8 @@ fd4_context_destroy(struct pipe_context *pctx) fd_hw_query_fini(pctx); fd_context_destroy(pctx); + + free(fd4_ctx); } static const uint8_t primtypes[] = { diff --git a/src/gallium/drivers/freedreno/a5xx/fd5_context.c b/src/gallium/drivers/freedreno/a5xx/fd5_context.c index c43a8ad2eca..96e89bc8542 100644 --- a/src/gallium/drivers/freedreno/a5xx/fd5_context.c +++ b/src/gallium/drivers/freedreno/a5xx/fd5_context.c @@ -54,6 +54,8 @@ fd5_context_destroy(struct pipe_context *pctx) u_upload_destroy(fd5_ctx->border_color_uploader); fd_context_destroy(pctx); + + free(fd5_ctx); } static const uint8_t primtypes[] = { diff --git a/src/gallium/drivers/freedreno/freedreno_context.c b/src/gallium/drivers/freedreno/freedreno_context.c index e1324e8c0af..2eeb85e315e 100644 --- a/src/gallium/drivers/freedreno/freedreno_context.c +++ b/src/gallium/drivers/freedreno/freedreno_context.c @@ -172,8 +172,6 @@ fd_context_destroy(struct pipe_context *pctx) (uint32_t)ctx->stats.batch_gmem, (uint32_t)ctx->stats.batch_nondraw, (uint32_t)ctx->stats.batch_restore); } - - FREE(ctx); } static void -- 2.30.2