workqueue: move pwq_pool_locking outside of get/put_unbound_pool()
authorTejun Heo <tj@kernel.org>
Mon, 1 Apr 2013 18:23:32 +0000 (11:23 -0700)
committerTejun Heo <tj@kernel.org>
Mon, 1 Apr 2013 18:23:32 +0000 (11:23 -0700)
commita892cacc7f4960a39c0fad7bbdf04c5cbf7c229e
treebbc2973a8d16bd643c4033cce6229049ff780e30
parent4862125b0256a946d2749a1d5003b0604bc3cb4d
workqueue: move pwq_pool_locking outside of get/put_unbound_pool()

The scheduled NUMA affinity support for unbound workqueues would need
to walk workqueues list and pool related operations on each workqueue.

Move wq_pool_mutex locking out of get/put_unbound_pool() to their
callers so that pool operations can be performed while walking the
workqueues list, which is also protected by wq_pool_mutex.

Signed-off-by: Tejun Heo <tj@kernel.org>
Reviewed-by: Lai Jiangshan <laijs@cn.fujitsu.com>
kernel/workqueue.c