Lines Matching defs:fence
1077 * issue a dummy occlusion query wait used as a query barrier. When the fence
1080 * since both the new query buffer and the old one are fenced with that fence,
1082 * won't be moved until the fence has signaled.
3748 * vmw_execbuf_fence_commands - create and submit a command stream fence
3750 * Creates a fence object and submits a command stream marker.
3752 * It is then safe to fence buffers with a NULL pointer.
3792 * vmw_execbuf_copy_fence_user - copy fence object information to user-space.
3796 * @ret: Return value from fence object creation.
3799 * @fence: Pointer to the fenc object.
3800 * @fence_handle: User-space fence handle.
3801 * @out_fence_fd: exported file descriptor for the fence. -1 if not used
3804 * This function copies fence information to user-space. If copying fails, the
3809 * Also if copying fails, user-space will be unable to signal the fence object
3816 struct vmw_fence_obj *fence, uint32_t fence_handle,
3829 BUG_ON(fence == NULL);
3832 fence_rep.seqno = fence->base.seqno;
3846 * User-space lost the fence object. We need to sync and unreference the
3853 (void) vmw_fence_obj_wait(fence, false, false,
4029 struct vmw_fence_obj *fence = NULL;
4042 VMW_DEBUG_USER("Failed to get a fence fd.\n");
4165 ret = vmw_execbuf_fence_commands(file_priv, dev_priv, &fence,
4168 * This error is harmless, because if fence submission fails,
4179 vmw_validation_bo_fence(sw_context->ctx, fence);
4182 __vmw_execbuf_release_pinned_bo(dev_priv, fence);
4185 * If anything fails here, give up trying to export the fence and do a
4186 * sync since the user mode will not be able to sync the fence itself.
4191 sync_file = sync_file_create(&fence->base);
4193 VMW_DEBUG_USER("Sync file create failed for fence\n");
4197 (void) vmw_fence_obj_wait(fence, false, false,
4203 user_fence_rep, fence, handle, out_fence_fd);
4207 /* usercopy of fence failed, put the file object */
4211 /* Link the fence with the FD created earlier */
4216 /* Don't unreference when handing fence out */
4218 *out_fence = fence;
4219 fence = NULL;
4220 } else if (likely(fence != NULL)) {
4221 vmw_fence_obj_unreference(&fence);
4294 * @fence: If non-NULL should point to a struct vmw_fence_obj issued _after_ a
4313 struct vmw_fence_obj *fence)
4337 BUG_ON(fence != NULL);
4349 if (fence == NULL) {
4352 fence = lfence;
4354 vmw_validation_bo_fence(&val_ctx, fence);
4426 /* If imported a fence FD from elsewhere, then wait on it */
4431 VMW_DEBUG_USER("Cannot get imported fence\n");