From: Wenchao Hao Date: Thu, 6 Jun 2024 08:52:16 +0000 (+0800) Subject: workqueue: Clean code in alloc_and_link_pwqs() X-Git-Tag: v6.11-rc1~220^2~23 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=7ccc215187a78f2e5260b9ca82505219bcbec899;p=thirdparty%2Fkernel%2Flinux.git workqueue: Clean code in alloc_and_link_pwqs() wq->flags would not change, so it's not necessary to check if WQ_BH is set in loop for_each_possible_cpu(), move define and set of pools out of loop to simpliy the code. Signed-off-by: Wenchao Hao Signed-off-by: Tejun Heo --- diff --git a/kernel/workqueue.c b/kernel/workqueue.c index 003474c9a77d0..f70ac724ca7b3 100644 --- a/kernel/workqueue.c +++ b/kernel/workqueue.c @@ -5461,16 +5461,17 @@ static int alloc_and_link_pwqs(struct workqueue_struct *wq) goto enomem; if (!(wq->flags & WQ_UNBOUND)) { + struct worker_pool __percpu *pools; + + if (wq->flags & WQ_BH) + pools = bh_worker_pools; + else + pools = cpu_worker_pools; + for_each_possible_cpu(cpu) { struct pool_workqueue **pwq_p; - struct worker_pool __percpu *pools; struct worker_pool *pool; - if (wq->flags & WQ_BH) - pools = bh_worker_pools; - else - pools = cpu_worker_pools; - pool = &(per_cpu_ptr(pools, cpu)[highpri]); pwq_p = per_cpu_ptr(wq->cpu_pwq, cpu);