[PATCH] workqueue: respect isolated cpus when queueing an unbound work
From: Tal Shorer
Date: Thu Oct 19 2017 - 17:44:36 EST
Initialize wq_unbound_cpumask to exclude cpus that were isolated by
the cmdline's isolcpus parameter.
Signed-off-by: Tal Shorer <tal.shorer@xxxxxxxxx>
---
kernel/workqueue.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/kernel/workqueue.c b/kernel/workqueue.c
index ca937b0..25b351d 100644
--- a/kernel/workqueue.c
+++ b/kernel/workqueue.c
@@ -5546,7 +5546,7 @@ int __init workqueue_init_early(void)
WARN_ON(__alignof__(struct pool_workqueue) < __alignof__(long long));
BUG_ON(!alloc_cpumask_var(&wq_unbound_cpumask, GFP_KERNEL));
- cpumask_copy(wq_unbound_cpumask, cpu_possible_mask);
+ cpumask_andnot(wq_unbound_cpumask, cpu_possible_mask, cpu_isolated_map);
pwq_cache = KMEM_CACHE(pool_workqueue, SLAB_PANIC);
--
2.7.4