Messages in this thread Patch in this message | | | From | Frederic Weisbecker <> | Subject | [RFC PATCH 09/12] workqueue: Affine unbound workqueues to housekeeping cpumask | Date | Wed, 23 Aug 2017 03:51:08 +0200 |
| |
Although the unbound workqueue cpumask can be overriden through sysfs, we also want to affine the workqueues when isolcpus= will be reimplemented on top of housekeeping.
Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com> Cc: Chris Metcalf <cmetcalf@mellanox.com> Cc: Rik van Riel <riel@redhat.com> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: Mike Galbraith <efault@gmx.de> Cc: Ingo Molnar <mingo@kernel.org> Cc: Christoph Lameter <cl@linux.com> Cc: Paul E. McKenney <paulmck@linux.vnet.ibm.com> Cc: Wanpeng Li <kernellwp@gmail.com> Cc: Luiz Capitulino <lcapitulino@redhat.com> --- include/linux/housekeeping.h | 1 + kernel/workqueue.c | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-)
diff --git a/include/linux/housekeeping.h b/include/linux/housekeeping.h index b1a62544..0959601 100644 --- a/include/linux/housekeeping.h +++ b/include/linux/housekeeping.h @@ -10,6 +10,7 @@ enum hk_flags { HK_FLAG_RCU = (1 << 1), HK_FLAG_MISC = (1 << 2), HK_FLAG_SCHED = (1 << 3), + HK_FLAG_WORKQUEUE = (1 << 4), }; #ifdef CONFIG_CPU_ISOLATION diff --git a/kernel/workqueue.c b/kernel/workqueue.c index ca937b0..256e3cb 100644 --- a/kernel/workqueue.c +++ b/kernel/workqueue.c @@ -48,6 +48,7 @@ #include <linux/nodemask.h> #include <linux/moduleparam.h> #include <linux/uaccess.h> +#include <linux/housekeeping.h> #include "workqueue_internal.h" @@ -5546,7 +5547,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_copy(wq_unbound_cpumask, housekeeping_cpumask(HK_FLAG_WORKQUEUE)); pwq_cache = KMEM_CACHE(pool_workqueue, SLAB_PANIC); -- 2.7.4
| |