[PATCH v5 24/24] virt/steal_monitor: Add design check of preferred subset of active
From: Shrikanth Hegde
Date: Thu Jun 25 2026 - 08:56:40 EST
One of the main design construct that CONFIG_PREFERRED_CPU maintains is
that preferred is always subset of active. Force that in any future arch
specific implementations.
Signed-off-by: Shrikanth Hegde <sshegde@xxxxxxxxxxxxx>
---
v4->v5:
- new patch
drivers/virt/steal_monitor/sm_core.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drivers/virt/steal_monitor/sm_core.c b/drivers/virt/steal_monitor/sm_core.c
index f5b0e568eb32..82beb2b94083 100644
--- a/drivers/virt/steal_monitor/sm_core.c
+++ b/drivers/virt/steal_monitor/sm_core.c
@@ -80,6 +80,9 @@ static void compute_preferred_cpus_work(struct work_struct *work)
/* At least one core is kept as preferred */
WARN_ON(cpumask_empty(cpu_preferred_mask));
+ /* Maintain design construct */
+ WARN_ON(!cpumask_subset(cpu_preferred_mask, cpu_active_mask));
+
/* Warn if interval_ms is set to 0, that might cause lockup. */
if (unlikely(sm_core_ctx.interval_ms == 0)) {
WARN_ON(1);
--
2.47.3