From b39bccbd4ed71e9585da4cf5acf7b887b2e90899 Mon Sep 17 00:00:00 2001 From: Marek Olšák Date: Sat, 5 Mar 2011 21:23:54 +0100 Subject: gallium: add timeout parameter to fence_finish This is a follow-up to the ARB_sync patch for st/mesa and completes the ARB_sync implementation. --- src/mesa/state_tracker/st_cb_flush.c | 3 ++- src/mesa/state_tracker/st_cb_syncobj.c | 4 ++-- 2 files changed, 4 insertions(+), 3 deletions(-) (limited to 'src/mesa') diff --git a/src/mesa/state_tracker/st_cb_flush.c b/src/mesa/state_tracker/st_cb_flush.c index 5a2343d3ae..35ab00f6d0 100644 --- a/src/mesa/state_tracker/st_cb_flush.c +++ b/src/mesa/state_tracker/st_cb_flush.c @@ -103,7 +103,8 @@ void st_finish( struct st_context *st ) st_flush(st, PIPE_FLUSH_RENDER_CACHE | PIPE_FLUSH_FRAME, &fence); if(fence) { - st->pipe->screen->fence_finish(st->pipe->screen, fence, 0); + st->pipe->screen->fence_finish(st->pipe->screen, fence, 0, + PIPE_TIMEOUT_INFINITE); st->pipe->screen->fence_reference(st->pipe->screen, &fence, NULL); } } diff --git a/src/mesa/state_tracker/st_cb_syncobj.c b/src/mesa/state_tracker/st_cb_syncobj.c index 69a8678a7c..85aad08cc7 100644 --- a/src/mesa/state_tracker/st_cb_syncobj.c +++ b/src/mesa/state_tracker/st_cb_syncobj.c @@ -96,8 +96,8 @@ static void st_client_wait_sync(struct gl_context *ctx, /* We don't care about GL_SYNC_FLUSH_COMMANDS_BIT, because flush is * already called when creating a fence. */ - if (so->fence) { - screen->fence_finish(screen, so->fence, 0); + if (so->fence && + screen->fence_finish(screen, so->fence, 0, timeout) == 0) { screen->fence_reference(screen, &so->fence, NULL); so->b.StatusFlag = GL_TRUE; } -- cgit v1.2.3