Re: [PATCH 0/8] sched/isolation: Split housekeeping cpumask

From: Phil Auld
Date: Fri Jan 07 2022 - 10:00:04 EST


On Tue, Jan 04, 2022 at 03:49:36PM +0100 Frederic Weisbecker wrote:
> Hi,
>
> To prepare for extending cpusets to control CPU isolation features
> (nohz_full, rcu_nocbs, unbound timers, workqueues, kthreads affinity...),
> we need to split the global housekeeping_mask to one cpumask per isolation
> feature.
>
> Doing so is quite a chunk already so I'm working on that as a standalone
> patchset. Once that get merged, the next step is to finally provide a
> cpuset interface for one of these isolation features: rcu_nocb could
> be interesting to handle first as nohz_full depends on it.
>
> git://git.kernel.org/pub/scm/linux/kernel/git/frederic/linux-dynticks.git
> isolation/split
>
> HEAD: 2c07a16ff50d1e722babee28b926d70522e6bd3e
>
> Thanks,
> Frederic
> ---

This is excellent, thanks!

Reviewed-by: Phil Auld <pauld@xxxxxxxxxx>


>
> Frederic Weisbecker (8):
> pci: Decouple HK_FLAG_WQ and HK_FLAG_DOMAIN cpumask fetch
> workqueue: Decouple HK_FLAG_WQ and HK_FLAG_DOMAIN cpumask fetch
> net: Decouple HK_FLAG_WQ and HK_FLAG_DOMAIN cpumask fetch
> sched/isolation: Use single feature type while referring to housekeeping cpumask
> sched/isolation: Consolidate check for housekeeping minimum service
> sched/isolation: Consolidate error handling
> sched/isolation: Fix housekeeping_mask memory leak
> sched/isolation: Split housekeeping cpumask per isolation features
>
>
> arch/x86/kernel/cpu/aperfmperf.c | 6 +-
> arch/x86/kvm/x86.c | 2 +-
> drivers/base/cpu.c | 2 +-
> drivers/pci/pci-driver.c | 21 +++--
> include/linux/sched/isolation.h | 43 ++++++-----
> kernel/cgroup/cpuset.c | 6 +-
> kernel/cpu.c | 4 +-
> kernel/irq/cpuhotplug.c | 4 +-
> kernel/irq/manage.c | 4 +-
> kernel/kthread.c | 4 +-
> kernel/rcu/tasks.h | 2 +-
> kernel/rcu/tree_plugin.h | 2 +-
> kernel/sched/core.c | 12 +--
> kernel/sched/fair.c | 10 +--
> kernel/sched/isolation.c | 162 +++++++++++++++++++++++++--------------
> kernel/sched/topology.c | 8 +-
> kernel/watchdog.c | 2 +-
> kernel/workqueue.c | 4 +-
> net/core/net-sysfs.c | 6 +-
> 19 files changed, 180 insertions(+), 124 deletions(-)
>

--