Lines Matching defs:fence
362 struct xa_fence *fence = calloc(1, sizeof(*fence));
365 if (!fence)
368 fence->xa = ctx->xa;
371 fence->pipe_fence = NULL;
373 screen->fence_reference(screen, &fence->pipe_fence, ctx->last_fence);
375 return fence;
379 xa_fence_wait(struct xa_fence *fence, uint64_t timeout)
381 if (!fence)
384 if (fence->pipe_fence) {
385 struct pipe_screen *screen = fence->xa->screen;
388 timed_out = !screen->fence_finish(screen, NULL, fence->pipe_fence, timeout);
392 screen->fence_reference(screen, &fence->pipe_fence, NULL);
398 xa_fence_destroy(struct xa_fence *fence)
400 if (!fence)
403 if (fence->pipe_fence) {
404 struct pipe_screen *screen = fence->xa->screen;
406 screen->fence_reference(screen, &fence->pipe_fence, NULL);
409 free(fence);