[Mesa-dev] [PATCH 0/4] fence refcnting fixes
Rob Clark
robdclark at gmail.com
Wed Jul 8 13:34:42 PDT 2015
From: Rob Clark <robclark at freedesktop.org>
This isn't at all clear for pipe driver writers currently, since it
is not documented anywhere. But radeon/nouveau/llvmpipe seem to drop
the ref on the **fence passed in to pipe->flush() (if *fence!=NULL).
Freedreno/ilo/vc4 where not doing this. Some state trackers do call
screen->fence_reference(screen, &fence, NULL) before pipe->flush(),
but others do not.
Add a comment for pipe->flush() to clairify what is expected of the
driver, and fixup freedreno/ilo/vc4 to comply.
Note: that ilo/vc4 patches are untested
Rob Clark (4):
gallium: clarify reference counting for fence
freedreno: unref old fence
ilo: unref old fence
vc4: unref old fence
src/gallium/drivers/freedreno/freedreno_context.c | 2 +-
src/gallium/drivers/freedreno/freedreno_fence.c | 2 +-
src/gallium/drivers/ilo/ilo_context.c | 5 ++++-
src/gallium/drivers/ilo/ilo_screen.c | 2 +-
src/gallium/drivers/vc4/vc4_context.c | 3 ++-
src/gallium/drivers/vc4/vc4_fence.c | 2 +-
src/gallium/include/pipe/p_context.h | 8 +++++++-
7 files changed, 17 insertions(+), 7 deletions(-)
--
2.4.3
More information about the mesa-dev
mailing list