Lines Matching refs:wait

3  * Parts ported from amdgpu (fence wait code).
107 * Host-side wait on syncobjs
111 * host-side wait on all of the syncobj fences simultaneously.
112 * If &DRM_SYNCOBJ_WAIT_FLAGS_WAIT_ALL is set, the wait ioctl will wait on
119 * the host-side wait will first wait for the syncobj to receive a non-NULL
120 * fence and then wait on that fence.
124 * to do a host wait in one thread (or process) which waits on GPU work
135 * handles as well as an array of u64 points and does a host-side wait on all
138 * &DRM_IOCTL_SYNCOBJ_TIMELINE_WAIT also adds the ability to wait for a given
141 * requirement is inherited from the wait-before-signal behavior required by
144 * Alternatively, &DRM_IOCTL_SYNCOBJ_EVENTFD can be used to wait without
146 * integrate the wait in an event loop.
223 struct syncobj_wait_entry *wait);
266 struct syncobj_wait_entry *wait)
270 if (wait->fence)
279 if (!fence || dma_fence_chain_find_seqno(&fence, wait->point)) {
281 list_add_tail(&wait->node, &syncobj->cb_list);
283 wait->fence = dma_fence_get_stub();
285 wait->fence = fence;
291 struct syncobj_wait_entry *wait)
293 if (!wait->node.next)
297 list_del_init(&wait->node);
418 /* 5s default for wait submission */
440 struct syncobj_wait_entry wait;
482 memset(&wait, 0, sizeof(wait));
483 wait.task = current;
484 wait.point = point;
485 drm_syncobj_fence_add_wait(syncobj, &wait);
489 if (wait.fence) {
507 *fence = wait.fence;
509 if (wait.node.next)
510 drm_syncobj_remove_wait(syncobj, &wait);
1005 struct syncobj_wait_entry *wait =
1008 wake_up_process(wait->task);
1012 struct syncobj_wait_entry *wait)
1020 if (!fence || dma_fence_chain_find_seqno(&fence, wait->point)) {
1024 wait->fence = dma_fence_get_stub();
1026 wait->fence = fence;
1029 wake_up_process(wait->task);
1030 list_del_init(&wait->node);
1115 * fallthough and try a 0 timeout wait!
1229 struct drm_syncobj_wait *wait,
1238 timeout = drm_timeout_abs_to_jiffies(wait->timeout_nsec);
1241 wait->count_handles,
1242 wait->flags,
1247 wait->first_signaled = first;