[PATCH-cgroup 0/2] cgroup/cpuset: Include isolated cpuset CPUs in cpu_is_isolated()

From: Waiman Long
Date: Sun Nov 26 2023 - 23:20:43 EST


This patchset enables the inclusion of CPUs in isolated cpuset partitions
in the cpu_is_isolated() check to reduce interference caused by vmstat
or memcg local stock flushing.

To reduce cpu_is_isolated() call overhead, a seqcount is used to
protect read access of the isolated cpumask without taking any lock. As
a result, the callback_lock is changed to a raw_spinlock_t to make it
work in PREEMPT_RT kernel too.

Waiman Long (2):
cgroup/cpuset: Make callback_lock a raw_spinlock_t
cgroup/cpuset: Include isolated cpuset CPUs in cpu_is_isolated() check

include/linux/cpuset.h | 6 ++
include/linux/sched/isolation.h | 4 +-
kernel/cgroup/cpuset.c | 127 +++++++++++++++++++-------------
3 files changed, 85 insertions(+), 52 deletions(-)

--
2.39.3