Re: [PATCH 05/33] sched/isolation: Save boot defined domain flags
From: Waiman Long <hidden>
Date: 2026-01-12 18:04:07
Also in:
cgroups, linux-arm-kernel, linux-block, linux-mm, linux-pci, lkml
On 1/1/26 5:13 PM, Frederic Weisbecker wrote:
quoted hunk ↗ jump to hunk
HK_TYPE_DOMAIN will soon integrate not only boot defined isolcpus= CPUs but also cpuset isolated partitions. Housekeeping still needs a way to record what was initially passed to isolcpus= in order to keep these CPUs isolated after a cpuset isolated partition is modified or destroyed while containing some of them. Create a new HK_TYPE_DOMAIN_BOOT to keep track of those. Signed-off-by: Frederic Weisbecker <frederic@kernel.org> Reviewed-by: Phil Auld <redacted> --- include/linux/sched/isolation.h | 4 ++++ kernel/sched/isolation.c | 5 +++-- 2 files changed, 7 insertions(+), 2 deletions(-)diff --git a/include/linux/sched/isolation.h b/include/linux/sched/isolation.h index d8501f4709b5..c7cf6934489c 100644 --- a/include/linux/sched/isolation.h +++ b/include/linux/sched/isolation.h@@ -7,8 +7,12 @@ #include <linux/tick.h> enum hk_type { + /* Inverse of boot-time isolcpus= argument */ + HK_TYPE_DOMAIN_BOOT, HK_TYPE_DOMAIN, + /* Inverse of boot-time isolcpus=managed_irq argument */ HK_TYPE_MANAGED_IRQ, + /* Inverse of boot-time nohz_full= or isolcpus=nohz arguments */ HK_TYPE_KERNEL_NOISE, HK_TYPE_MAX,diff --git a/kernel/sched/isolation.c b/kernel/sched/isolation.c index 3ad0d6df6a0a..11a623fa6320 100644 --- a/kernel/sched/isolation.c +++ b/kernel/sched/isolation.c@@ -11,6 +11,7 @@ #include "sched.h" enum hk_flags { + HK_FLAG_DOMAIN_BOOT = BIT(HK_TYPE_DOMAIN_BOOT), HK_FLAG_DOMAIN = BIT(HK_TYPE_DOMAIN), HK_FLAG_MANAGED_IRQ = BIT(HK_TYPE_MANAGED_IRQ), HK_FLAG_KERNEL_NOISE = BIT(HK_TYPE_KERNEL_NOISE),@@ -239,7 +240,7 @@ static int __init housekeeping_isolcpus_setup(char *str) if (!strncmp(str, "domain,", 7)) { str += 7; - flags |= HK_FLAG_DOMAIN; + flags |= HK_FLAG_DOMAIN | HK_FLAG_DOMAIN_BOOT; continue; }@@ -269,7 +270,7 @@ static int __init housekeeping_isolcpus_setup(char *str) /* Default behaviour for isolcpus without flags */ if (!flags) - flags |= HK_FLAG_DOMAIN; + flags |= HK_FLAG_DOMAIN | HK_FLAG_DOMAIN_BOOT; return housekeeping_setup(str, flags); }
Reviewed-by: Waiman Long <longman@redhat.com>