[PATCH 0/2] isolation: Exclude dynamically isolated CPUs from housekeeping masks

From: Waiman Long
Date: Wed Feb 28 2024 - 21:15:03 EST


The housekeeping CPU masks, set up by the "isolcpus" and "nohz_full"
boot command line options, are used at boot time to exclude selected
CPUs from running some kernel housekeeping processes to minimize
disturbance to latency sensitive userspace applications. However, some
of housekeeping CPU masks are also checked at run time to avoid using
those isolated CPUs.

The purpose of this patch series is to exclude dynamically isolated
CPUs from some housekeeping masks so that subsystems that check the
housekeeping masks at run time will not see those isolated CPUs. It does
not migrate the housekeeping processes that have been running on those
newly isolated CPUs since bootup to other CPUs. That will hopefully be
done in the near future.

This patch series only updates the HK_TYPE_TIMER and HK_TYPE_RCU
housekeeping masks for the time being, though this is subject to change.

Waiman Long (2):
sched/isolation: Exclude dynamically isolated CPUs from housekeeping
masks
cgroup/cpuset: Exclude isolated CPUs from housekeeping CPU masks

include/linux/sched/isolation.h | 8 +++
kernel/cgroup/cpuset.c | 30 +++++++---
kernel/sched/isolation.c | 101 +++++++++++++++++++++++++++++++-
3 files changed, 131 insertions(+), 8 deletions(-)

--
2.39.3