From: Rob Clark Date: Wed, 8 Jul 2015 18:48:01 +0000 (-0400) Subject: freedreno: unref old fence X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=7e0a26defe65dad7ffc8e7a95b5577be51feb2bc;p=mesa.git freedreno: unref old fence Some, but not all, state trackers will explicitly unref (and set to NULL) the previous *fence before calling pipe->flush(). So driver should use fence_ref() which will unref the old fence if not NULL. Signed-off-by: Rob Clark --- diff --git a/src/gallium/drivers/freedreno/freedreno_context.c b/src/gallium/drivers/freedreno/freedreno_context.c index 668ef3629bf..127fb5f5aa0 100644 --- a/src/gallium/drivers/freedreno/freedreno_context.c +++ b/src/gallium/drivers/freedreno/freedreno_context.c @@ -144,8 +144,10 @@ fd_context_flush(struct pipe_context *pctx, struct pipe_fence_handle **fence, { fd_context_render(pctx); - if (fence) + if (fence) { + fd_screen_fence_ref(pctx->screen, fence, NULL); *fence = fd_fence_create(pctx); + } } void