summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/llvmpipe/lp_fence.c
diff options
context:
space:
mode:
authorBrian Paul <brianp@vmware.com>2010-03-24 19:30:27 -0600
committerBrian Paul <brianp@vmware.com>2010-03-24 19:30:27 -0600
commit331729c8c877fd8ddde0a83cbe0fcdd5df4b1f1f (patch)
treef7d0b7728a778616761a62e8a0e37d5f0c83261a /src/gallium/drivers/llvmpipe/lp_fence.c
parentb4b4ac668116d974522df2ce56e30b74ecdfef77 (diff)
llvmpipe: added lp_fence_signal()
Diffstat (limited to 'src/gallium/drivers/llvmpipe/lp_fence.c')
-rw-r--r--src/gallium/drivers/llvmpipe/lp_fence.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/gallium/drivers/llvmpipe/lp_fence.c b/src/gallium/drivers/llvmpipe/lp_fence.c
index 525c117f31..00dc3eab6b 100644
--- a/src/gallium/drivers/llvmpipe/lp_fence.c
+++ b/src/gallium/drivers/llvmpipe/lp_fence.c
@@ -29,6 +29,7 @@
#include "pipe/p_screen.h"
#include "util/u_memory.h"
#include "util/u_inlines.h"
+#include "lp_debug.h"
#include "lp_fence.h"
@@ -99,6 +100,21 @@ llvmpipe_fence_finish(struct pipe_screen *screen,
}
+void
+lp_fence_signal(struct lp_fence *fence)
+{
+ pipe_mutex_lock(fence->mutex);
+
+ fence->count++;
+ assert(fence->count <= fence->rank);
+
+ LP_DBG(DEBUG_RAST, "%s count=%u rank=%u\n", __FUNCTION__,
+ fence->count, fence->rank);
+
+ pipe_condvar_signal(fence->signalled);
+
+ pipe_mutex_unlock(fence->mutex);
+}
void