diff options
author | Joonsoo Kim <js1304@gmail.com> | 2012-08-15 10:25:41 -0400 |
---|---|---|
committer | Tejun Heo <tj@kernel.org> | 2012-08-16 17:21:16 -0400 |
commit | 7635d2fd7f0fa63b6ec03050614c314d7139f14a (patch) | |
tree | 8d8d0387e6f791ed67ad5d23dfe0fb93a1615337 /kernel/workqueue.c | |
parent | e2b6a6d570f070aa90ac00d2d10b1488512f8520 (diff) |
workqueue: use system_highpri_wq for unbind_work
To speed cpu down processing up, use system_highpri_wq.
As scheduling priority of workers on it is higher than system_wq and
it is not contended by other normal works on this cpu, work on it
is processed faster than system_wq.
tj: CPU up/downs care quite a bit about latency these days. This
shouldn't hurt anything and makes sense.
Signed-off-by: Joonsoo Kim <js1304@gmail.com>
Signed-off-by: Tejun Heo <tj@kernel.org>
Diffstat (limited to 'kernel/workqueue.c')
-rw-r--r-- | kernel/workqueue.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/kernel/workqueue.c b/kernel/workqueue.c index 8936761b814a..7da24711038f 100644 --- a/kernel/workqueue.c +++ b/kernel/workqueue.c | |||
@@ -3680,7 +3680,7 @@ static int __devinit workqueue_cpu_down_callback(struct notifier_block *nfb, | |||
3680 | case CPU_DOWN_PREPARE: | 3680 | case CPU_DOWN_PREPARE: |
3681 | /* unbinding should happen on the local CPU */ | 3681 | /* unbinding should happen on the local CPU */ |
3682 | INIT_WORK_ONSTACK(&unbind_work, gcwq_unbind_fn); | 3682 | INIT_WORK_ONSTACK(&unbind_work, gcwq_unbind_fn); |
3683 | schedule_work_on(cpu, &unbind_work); | 3683 | queue_work_on(cpu, system_highpri_wq, &unbind_work); |
3684 | flush_work(&unbind_work); | 3684 | flush_work(&unbind_work); |
3685 | break; | 3685 | break; |
3686 | } | 3686 | } |