Lines Matching refs:completion

4  * Generic wait-for-completion handler;
13 * Waiting for completion is a typically sync point, but not an exclusion point.
16 static void complete_with_flags(struct completion *x, int wake_flags)
28 void complete_on_current_cpu(struct completion *x)
34 * complete: - signals a single thread waiting on this completion
35 * @x: holds the state of this particular completion
37 * This will wake up a single thread waiting on this completion. Threads will be
45 void complete(struct completion *x)
52 * complete_all: - signals all threads waiting on this completion
53 * @x: holds the state of this particular completion
55 * This will wake up all threads waiting on this particular completion event.
60 * Since complete_all() sets the completion of @x permanently to done
67 void complete_all(struct completion *x)
81 do_wait_for_common(struct completion *x,
108 __wait_for_common(struct completion *x,
125 wait_for_common(struct completion *x, long timeout, int state)
131 wait_for_common_io(struct completion *x, long timeout, int state)
137 * wait_for_completion: - waits for completion of a task
138 * @x: holds the state of this particular completion
140 * This waits to be signaled for completion of a specific task. It is NOT
146 void __sched wait_for_completion(struct completion *x)
153 * wait_for_completion_timeout: - waits for completion of a task (w/timeout)
154 * @x: holds the state of this particular completion
157 * This waits for either a completion of a specific task to be signaled or for a
165 wait_for_completion_timeout(struct completion *x, unsigned long timeout)
172 * wait_for_completion_io: - waits for completion of a task
173 * @x: holds the state of this particular completion
175 * This waits to be signaled for completion of a specific task. It is NOT
179 void __sched wait_for_completion_io(struct completion *x)
186 * wait_for_completion_io_timeout: - waits for completion of a task (w/timeout)
187 * @x: holds the state of this particular completion
190 * This waits for either a completion of a specific task to be signaled or for a
199 wait_for_completion_io_timeout(struct completion *x, unsigned long timeout)
206 * wait_for_completion_interruptible: - waits for completion of a task (w/intr)
207 * @x: holds the state of this particular completion
209 * This waits for completion of a specific task to be signaled. It is
214 int __sched wait_for_completion_interruptible(struct completion *x)
225 * wait_for_completion_interruptible_timeout: - waits for completion (w/(to,intr))
226 * @x: holds the state of this particular completion
229 * This waits for either a completion of a specific task to be signaled or for a
236 wait_for_completion_interruptible_timeout(struct completion *x,
244 * wait_for_completion_killable: - waits for completion of a task (killable)
245 * @x: holds the state of this particular completion
247 * This waits to be signaled for completion of a specific task. It can be
252 int __sched wait_for_completion_killable(struct completion *x)
262 int __sched wait_for_completion_state(struct completion *x, unsigned int state)
273 * wait_for_completion_killable_timeout: - waits for completion of a task (w/(to,killable))
274 * @x: holds the state of this particular completion
277 * This waits for either a completion of a specific task to be
285 wait_for_completion_killable_timeout(struct completion *x,
293 * try_wait_for_completion - try to decrement a completion without blocking
294 * @x: completion structure
299 * If a completion is being used as a counting completion,
301 * enables us to avoid waiting if the resource the completion
304 bool try_wait_for_completion(struct completion *x)
329 * completion_done - Test to see if a completion has any waiters
330 * @x: completion structure
337 bool completion_done(struct completion *x)
346 * otherwise we can end up freeing the completion before complete()