diff options
author | Tejun Heo <tj@kernel.org> | 2010-09-16 04:48:29 -0400 |
---|---|---|
committer | Tejun Heo <tj@kernel.org> | 2010-09-19 11:51:05 -0400 |
commit | 09383498c5d35262e643bfdbae84826177a3c624 (patch) | |
tree | ec75ee767bff28cabbd1d1b82cfc3457147dda33 /include/linux/workqueue.h | |
parent | baf59022c37d43f202e62d5130e4bac5e825b426 (diff) |
workqueue: implement flush[_delayed]_work_sync()
Implement flush[_delayed]_work_sync(). These are flush functions
which also make sure no CPU is still executing the target work from
earlier queueing instances. These are similar to
cancel[_delayed]_work_sync() except that the target work item is
flushed instead of cancelled.
Signed-off-by: Tejun Heo <tj@kernel.org>
Diffstat (limited to 'include/linux/workqueue.h')
-rw-r--r-- | include/linux/workqueue.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/include/linux/workqueue.h b/include/linux/workqueue.h index bb9b683ea6fa..e33ff4a91703 100644 --- a/include/linux/workqueue.h +++ b/include/linux/workqueue.h | |||
@@ -355,9 +355,11 @@ extern int keventd_up(void); | |||
355 | int execute_in_process_context(work_func_t fn, struct execute_work *); | 355 | int execute_in_process_context(work_func_t fn, struct execute_work *); |
356 | 356 | ||
357 | extern bool flush_work(struct work_struct *work); | 357 | extern bool flush_work(struct work_struct *work); |
358 | extern bool flush_work_sync(struct work_struct *work); | ||
358 | extern bool cancel_work_sync(struct work_struct *work); | 359 | extern bool cancel_work_sync(struct work_struct *work); |
359 | 360 | ||
360 | extern bool flush_delayed_work(struct delayed_work *dwork); | 361 | extern bool flush_delayed_work(struct delayed_work *dwork); |
362 | extern bool flush_delayed_work_sync(struct delayed_work *work); | ||
361 | extern bool cancel_delayed_work_sync(struct delayed_work *dwork); | 363 | extern bool cancel_delayed_work_sync(struct delayed_work *dwork); |
362 | 364 | ||
363 | extern void workqueue_set_max_active(struct workqueue_struct *wq, | 365 | extern void workqueue_set_max_active(struct workqueue_struct *wq, |