[Mesa-dev] [PATCH 4/4] vc4: unref old fence

Rob Clark robdclark at gmail.com
Thu Jul 9 06:52:11 PDT 2015


On Thu, Jul 9, 2015 at 8:36 AM, Emil Velikov <emil.l.velikov at gmail.com> wrote:
> On 9 July 2015 at 01:46, Rob Clark <robdclark at gmail.com> wrote:
>> From: Rob Clark <robclark at freedesktop.org>
>>
>> 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 <robclark at freedesktop.org>
>> ---
>>  src/gallium/drivers/vc4/vc4_context.c | 2 ++
>>  1 file changed, 2 insertions(+)
>>
>> diff --git a/src/gallium/drivers/vc4/vc4_context.c b/src/gallium/drivers/vc4/vc4_context.c
>> index 630f8e6..316598f 100644
>> --- a/src/gallium/drivers/vc4/vc4_context.c
>> +++ b/src/gallium/drivers/vc4/vc4_context.c
>> @@ -103,8 +103,10 @@ vc4_pipe_flush(struct pipe_context *pctx, struct pipe_fence_handle **fence,
>>          vc4_flush(pctx);
>>
>>          if (fence) {
>> +                struct pipe_screen *screen = pctx->screen;
>>                  struct vc4_fence *f = vc4_fence_create(vc4->screen,
>>                                                         vc4->last_emit_seqno);
>> +                screen->fence_reference(screen, fence, NULL);
> The order seems to be reversed comparing to the other patches that
> you've sent. Is that intentional ?

it just made the diff smaller to do it in this order... the order
doesn't really matter

BR,
-R

> -Emil


More information about the mesa-dev mailing list