]> git.baikalelectronics.ru Git - kernel.git/commit
workqueue: fix worker management invocation without pending works
authorTejun Heo <tj@kernel.org>
Fri, 2 Jul 2010 08:03:51 +0000 (10:03 +0200)
committerTejun Heo <tj@kernel.org>
Fri, 2 Jul 2010 08:03:51 +0000 (10:03 +0200)
commit5af5873889f663735e18aeae503f6aee824b7977
treeb61b92f270b9fedc577e8196d605c93d695052d4
parentbfabe12c151b8457f55228f15780ebf54bb390e6
workqueue: fix worker management invocation without pending works

When there's no pending work to do, worker_thread() goes back to sleep
after waking up without checking whether worker management is
necessary.  This means that idle worker exit requests can be ignored
if the gcwq stays empty.

Fix it by making worker_thread() always check whether worker
management is necessary before going to sleep.

Signed-off-by: Tejun Heo <tj@kernel.org>
kernel/workqueue.c