summaryrefslogtreecommitdiffstats
path: root/src/gallium
diff options
context:
space:
mode:
authorRob Clark <[email protected]>2014-09-30 13:47:58 -0400
committerRob Clark <[email protected]>2014-09-30 16:56:15 -0400
commitcc355f1c06063b6d3c0ba5377aee605c9c393488 (patch)
treeee83364d74c4d6ca35a0aa21b4f56431446c5f3a /src/gallium
parent01ff0b28b3d56d1703e37f6f186b7fce77955103 (diff)
freedreno: destroy transfer pool after blitter
Blitter can still have transfers hanging around which it frees in util_blitter_destroy(). So let it clean up before we yank the transfer_pool from under it. Signed-off-by: Rob Clark <[email protected]>
Diffstat (limited to 'src/gallium')
-rw-r--r--src/gallium/drivers/freedreno/freedreno_context.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/gallium/drivers/freedreno/freedreno_context.c b/src/gallium/drivers/freedreno/freedreno_context.c
index 496a4227099..3a8545f6716 100644
--- a/src/gallium/drivers/freedreno/freedreno_context.c
+++ b/src/gallium/drivers/freedreno/freedreno_context.c
@@ -148,8 +148,6 @@ fd_context_destroy(struct pipe_context *pctx)
fd_prog_fini(pctx);
fd_hw_query_fini(pctx);
- util_slab_destroy(&ctx->transfer_pool);
-
util_dynarray_fini(&ctx->draw_patches);
if (ctx->blitter)
@@ -158,6 +156,8 @@ fd_context_destroy(struct pipe_context *pctx)
if (ctx->primconvert)
util_primconvert_destroy(ctx->primconvert);
+ util_slab_destroy(&ctx->transfer_pool);
+
fd_ringmarker_del(ctx->draw_start);
fd_ringmarker_del(ctx->draw_end);
fd_ringmarker_del(ctx->binning_start);