Re: [PATCH 1/2 V3] workqueue: substitute POOL_FREEZING with __WQ_FREEZING

2014-04-22 Thread Lai Jiangshan
On 04/23/2014 04:46 AM, Tejun Heo wrote: > Hello, > > On Tue, Apr 22, 2014 at 09:47:47AM +0800, Lai Jiangshan wrote: >> Testing workqueue_freezing requires wq_pool_mutex held. >> Although almost-all pwq_adjust_max_active() are called with wq_pool_mutex >> held, >> except

Re: [PATCH 1/2 V3] workqueue: substitute POOL_FREEZING with __WQ_FREEZING

2014-04-22 Thread Tejun Heo
Hello, On Tue, Apr 22, 2014 at 09:47:47AM +0800, Lai Jiangshan wrote: > Testing workqueue_freezing requires wq_pool_mutex held. > Although almost-all pwq_adjust_max_active() are called with wq_pool_mutex > held, > except workqueue_set_max_active(). But I hope pwq_adjust_max_active() > don't

Re: [PATCH 1/2 V3] workqueue: substitute POOL_FREEZING with __WQ_FREEZING

2014-04-22 Thread Tejun Heo
Hello, On Tue, Apr 22, 2014 at 09:47:47AM +0800, Lai Jiangshan wrote: Testing workqueue_freezing requires wq_pool_mutex held. Although almost-all pwq_adjust_max_active() are called with wq_pool_mutex held, except workqueue_set_max_active(). But I hope pwq_adjust_max_active() don't require

Re: [PATCH 1/2 V3] workqueue: substitute POOL_FREEZING with __WQ_FREEZING

2014-04-22 Thread Lai Jiangshan
On 04/23/2014 04:46 AM, Tejun Heo wrote: Hello, On Tue, Apr 22, 2014 at 09:47:47AM +0800, Lai Jiangshan wrote: Testing workqueue_freezing requires wq_pool_mutex held. Although almost-all pwq_adjust_max_active() are called with wq_pool_mutex held, except workqueue_set_max_active(). But I

Re: [PATCH 1/2 V3] workqueue: substitute POOL_FREEZING with __WQ_FREEZING

2014-04-21 Thread Lai Jiangshan
On 04/22/2014 06:20 AM, Tejun Heo wrote: > On Mon, Apr 21, 2014 at 07:59:20PM +0800, Lai Jiangshan wrote: >> Only workqueues have freezable or freezing attribution/state, not worker >> pools. >> But POOL_FREEZING adds a suspicious state and makes reviewers confused. >> >> And it causes

Re: [PATCH 1/2 V3] workqueue: substitute POOL_FREEZING with __WQ_FREEZING

2014-04-21 Thread Tejun Heo
On Mon, Apr 21, 2014 at 07:59:20PM +0800, Lai Jiangshan wrote: > Only workqueues have freezable or freezing attribution/state, not worker > pools. > But POOL_FREEZING adds a suspicious state and makes reviewers confused. > > And it causes freeze_workqueues_begin() and thaw_workqueues() much >

[PATCH 1/2 V3] workqueue: substitute POOL_FREEZING with __WQ_FREEZING

2014-04-21 Thread Lai Jiangshan
Only workqueues have freezable or freezing attribution/state, not worker pools. But POOL_FREEZING adds a suspicious state and makes reviewers confused. And it causes freeze_workqueues_begin() and thaw_workqueues() much complicated, they need to travel all the pools besides wqs. Since freezable

[PATCH 1/2 V3] workqueue: substitute POOL_FREEZING with __WQ_FREEZING

2014-04-21 Thread Lai Jiangshan
Only workqueues have freezable or freezing attribution/state, not worker pools. But POOL_FREEZING adds a suspicious state and makes reviewers confused. And it causes freeze_workqueues_begin() and thaw_workqueues() much complicated, they need to travel all the pools besides wqs. Since freezable

Re: [PATCH 1/2 V3] workqueue: substitute POOL_FREEZING with __WQ_FREEZING

2014-04-21 Thread Tejun Heo
On Mon, Apr 21, 2014 at 07:59:20PM +0800, Lai Jiangshan wrote: Only workqueues have freezable or freezing attribution/state, not worker pools. But POOL_FREEZING adds a suspicious state and makes reviewers confused. And it causes freeze_workqueues_begin() and thaw_workqueues() much

Re: [PATCH 1/2 V3] workqueue: substitute POOL_FREEZING with __WQ_FREEZING

2014-04-21 Thread Lai Jiangshan
On 04/22/2014 06:20 AM, Tejun Heo wrote: On Mon, Apr 21, 2014 at 07:59:20PM +0800, Lai Jiangshan wrote: Only workqueues have freezable or freezing attribution/state, not worker pools. But POOL_FREEZING adds a suspicious state and makes reviewers confused. And it causes