Lines Matching full:completion

3  * Generic wait-for-completion handler;
12 * Waiting for completion is a typically sync point, but not an exclusion point.
17 * complete: - signals a single thread waiting on this completion
18 * @x: holds the state of this particular completion
20 * This will wake up a single thread waiting on this completion. Threads will be
28 void complete(struct completion *x) in complete()
42 * complete_all: - signals all threads waiting on this completion
43 * @x: holds the state of this particular completion
45 * This will wake up all threads waiting on this particular completion event.
50 * Since complete_all() sets the completion of @x permanently to done
57 void complete_all(struct completion *x) in complete_all()
71 do_wait_for_common(struct completion *x, in do_wait_for_common()
98 __wait_for_common(struct completion *x, in __wait_for_common()
115 wait_for_common(struct completion *x, long timeout, int state) in wait_for_common()
121 wait_for_common_io(struct completion *x, long timeout, int state) in wait_for_common_io()
127 * wait_for_completion: - waits for completion of a task
128 * @x: holds the state of this particular completion
130 * This waits to be signaled for completion of a specific task. It is NOT
136 void __sched wait_for_completion(struct completion *x) in wait_for_completion()
143 * wait_for_completion_timeout: - waits for completion of a task (w/timeout)
144 * @x: holds the state of this particular completion
147 * This waits for either a completion of a specific task to be signaled or for a
155 wait_for_completion_timeout(struct completion *x, unsigned long timeout) in wait_for_completion_timeout()
162 * wait_for_completion_io: - waits for completion of a task
163 * @x: holds the state of this particular completion
165 * This waits to be signaled for completion of a specific task. It is NOT
169 void __sched wait_for_completion_io(struct completion *x) in wait_for_completion_io()
176 * wait_for_completion_io_timeout: - waits for completion of a task (w/timeout)
177 * @x: holds the state of this particular completion
180 * This waits for either a completion of a specific task to be signaled or for a
189 wait_for_completion_io_timeout(struct completion *x, unsigned long timeout) in wait_for_completion_io_timeout()
196 * wait_for_completion_interruptible: - waits for completion of a task (w/intr)
197 * @x: holds the state of this particular completion
199 * This waits for completion of a specific task to be signaled. It is
204 int __sched wait_for_completion_interruptible(struct completion *x) in wait_for_completion_interruptible()
214 * wait_for_completion_interruptible_timeout: - waits for completion (w/(to,intr))
215 * @x: holds the state of this particular completion
218 * This waits for either a completion of a specific task to be signaled or for a
225 wait_for_completion_interruptible_timeout(struct completion *x, in wait_for_completion_interruptible_timeout()
233 * wait_for_completion_killable: - waits for completion of a task (killable)
234 * @x: holds the state of this particular completion
236 * This waits to be signaled for completion of a specific task. It can be
241 int __sched wait_for_completion_killable(struct completion *x) in wait_for_completion_killable()
251 * wait_for_completion_killable_timeout: - waits for completion of a task (w/(to,killable))
252 * @x: holds the state of this particular completion
255 * This waits for either a completion of a specific task to be
263 wait_for_completion_killable_timeout(struct completion *x, in wait_for_completion_killable_timeout()
271 * try_wait_for_completion - try to decrement a completion without blocking
272 * @x: completion structure
277 * If a completion is being used as a counting completion,
279 * enables us to avoid waiting if the resource the completion
282 bool try_wait_for_completion(struct completion *x) in try_wait_for_completion()
307 * completion_done - Test to see if a completion has any waiters
308 * @x: completion structure
315 bool completion_done(struct completion *x) in completion_done()
324 * otherwise we can end up freeing the completion before complete() in completion_done()