diff options
author | Oleg Nesterov <oleg@tv-sign.ru> | 2008-07-25 04:47:53 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2008-07-25 13:53:40 -0400 |
commit | 8de6d308bab4f67fcf953562f9f08f9527cad72d (patch) | |
tree | d896d82088d50a6c9d56300225605c5658f44549 /kernel/workqueue.c | |
parent | ef1ca236b8d645349ed6569598ae3f6c1b9511c0 (diff) |
workqueues: schedule_on_each_cpu() can use schedule_work_on()
schedule_on_each_cpu() can use schedule_work_on() to avoid the code
duplication.
Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'kernel/workqueue.c')
-rw-r--r-- | kernel/workqueue.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/kernel/workqueue.c b/kernel/workqueue.c index fe08a8512ddd..7cf430372f89 100644 --- a/kernel/workqueue.c +++ b/kernel/workqueue.c | |||
@@ -689,8 +689,7 @@ int schedule_on_each_cpu(work_func_t func) | |||
689 | struct work_struct *work = per_cpu_ptr(works, cpu); | 689 | struct work_struct *work = per_cpu_ptr(works, cpu); |
690 | 690 | ||
691 | INIT_WORK(work, func); | 691 | INIT_WORK(work, func); |
692 | set_bit(WORK_STRUCT_PENDING, work_data_bits(work)); | 692 | schedule_work_on(cpu, work); |
693 | __queue_work(per_cpu_ptr(keventd_wq->cpu_wq, cpu), work); | ||
694 | } | 693 | } |
695 | for_each_online_cpu(cpu) | 694 | for_each_online_cpu(cpu) |
696 | flush_work(per_cpu_ptr(works, cpu)); | 695 | flush_work(per_cpu_ptr(works, cpu)); |