Mesa (master): nouveau: check if a fence has already been signalled

Ilia Mirkin imirkin at kemper.freedesktop.org
Tue Jul 15 23:18:35 UTC 2014


Module: Mesa
Branch: master
Commit: bbc4a7bd31e604ee94b9285ec3e6c8bee0cb9502
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=bbc4a7bd31e604ee94b9285ec3e6c8bee0cb9502

Author: Ilia Mirkin <imirkin at alum.mit.edu>
Date:   Wed Jul  9 23:20:43 2014 -0400

nouveau: check if a fence has already been signalled

nouveau_fence_update does real work unconditionally. Avoid doing that if
the fence we're checking on has already been signalled.

Signed-off-by: Ilia Mirkin <imirkin at alum.mit.edu>

---

 src/gallium/drivers/nouveau/nouveau_fence.c |    3 +++
 1 file changed, 3 insertions(+)

diff --git a/src/gallium/drivers/nouveau/nouveau_fence.c b/src/gallium/drivers/nouveau/nouveau_fence.c
index c686710..a9448a4 100644
--- a/src/gallium/drivers/nouveau/nouveau_fence.c
+++ b/src/gallium/drivers/nouveau/nouveau_fence.c
@@ -174,6 +174,9 @@ nouveau_fence_signalled(struct nouveau_fence *fence)
 {
    struct nouveau_screen *screen = fence->screen;
 
+   if (fence->state == NOUVEAU_FENCE_STATE_SIGNALLED)
+      return TRUE;
+
    if (fence->state >= NOUVEAU_FENCE_STATE_EMITTED)
       nouveau_fence_update(screen, FALSE);
 




More information about the mesa-commit mailing list