forked from Minki/linux
workqueue: relocate pwq_set_max_active()
pwq_set_max_active() is gonna be modified and used during pool_workqueue init. Move it above init_and_link_pwq(). This patch is pure code reorganization and doesn't introduce any functional changes. Signed-off-by: Tejun Heo <tj@kernel.org>
This commit is contained in:
parent
e626761691
commit
0fbd95aa8a
@ -3725,6 +3725,26 @@ static void pwq_unbound_release_workfn(struct work_struct *work)
|
||||
kfree(wq);
|
||||
}
|
||||
|
||||
/**
|
||||
* pwq_set_max_active - adjust max_active of a pwq
|
||||
* @pwq: target pool_workqueue
|
||||
* @max_active: new max_active value.
|
||||
*
|
||||
* Set @pwq->max_active to @max_active and activate delayed works if
|
||||
* increased.
|
||||
*
|
||||
* CONTEXT:
|
||||
* spin_lock_irq(pool->lock).
|
||||
*/
|
||||
static void pwq_set_max_active(struct pool_workqueue *pwq, int max_active)
|
||||
{
|
||||
pwq->max_active = max_active;
|
||||
|
||||
while (!list_empty(&pwq->delayed_works) &&
|
||||
pwq->nr_active < pwq->max_active)
|
||||
pwq_activate_first_delayed(pwq);
|
||||
}
|
||||
|
||||
static void init_and_link_pwq(struct pool_workqueue *pwq,
|
||||
struct workqueue_struct *wq,
|
||||
struct worker_pool *pool,
|
||||
@ -4011,26 +4031,6 @@ void destroy_workqueue(struct workqueue_struct *wq)
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(destroy_workqueue);
|
||||
|
||||
/**
|
||||
* pwq_set_max_active - adjust max_active of a pwq
|
||||
* @pwq: target pool_workqueue
|
||||
* @max_active: new max_active value.
|
||||
*
|
||||
* Set @pwq->max_active to @max_active and activate delayed works if
|
||||
* increased.
|
||||
*
|
||||
* CONTEXT:
|
||||
* spin_lock_irq(pool->lock).
|
||||
*/
|
||||
static void pwq_set_max_active(struct pool_workqueue *pwq, int max_active)
|
||||
{
|
||||
pwq->max_active = max_active;
|
||||
|
||||
while (!list_empty(&pwq->delayed_works) &&
|
||||
pwq->nr_active < pwq->max_active)
|
||||
pwq_activate_first_delayed(pwq);
|
||||
}
|
||||
|
||||
/**
|
||||
* workqueue_set_max_active - adjust max_active of a workqueue
|
||||
* @wq: target workqueue
|
||||
|
Loading…
Reference in New Issue
Block a user