summaryrefslogtreecommitdiff
path: root/kernel
diff options
context:
space:
mode:
authorShrikanth Hegde <sshegde@linux.ibm.com>2025-03-06 10:59:53 +0530
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2025-04-10 14:29:42 +0200
commit0ab44f03c50fceb8c8bd27ea9b61039c5c611cf0 (patch)
tree107d619a53267148339a8d0fafc6f79b03870397 /kernel
parent04039a38068a10612a7689aa72c111ff700694c3 (diff)
downloadlinux-0ab44f03c50fceb8c8bd27ea9b61039c5c611cf0.tar.gz
linux-0ab44f03c50fceb8c8bd27ea9b61039c5c611cf0.tar.bz2
linux-0ab44f03c50fceb8c8bd27ea9b61039c5c611cf0.zip
sched/deadline: Use online cpus for validating runtime
[ Upstream commit 14672f059d83f591afb2ee1fff56858efe055e5a ] The ftrace selftest reported a failure because writing -1 to sched_rt_runtime_us returns -EBUSY. This happens when the possible CPUs are different from active CPUs. Active CPUs are part of one root domain, while remaining CPUs are part of def_root_domain. Since active cpumask is being used, this results in cpus=0 when a non active CPUs is used in the loop. Fix it by looping over the online CPUs instead for validating the bandwidth calculations. Signed-off-by: Shrikanth Hegde <sshegde@linux.ibm.com> Signed-off-by: Ingo Molnar <mingo@kernel.org> Reviewed-by: Juri Lelli <juri.lelli@redhat.com> Link: https://lore.kernel.org/r/20250306052954.452005-2-sshegde@linux.ibm.com Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'kernel')
-rw-r--r--kernel/sched/deadline.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/kernel/sched/deadline.c b/kernel/sched/deadline.c
index ba3d7c223999..023d52d2a0f1 100644
--- a/kernel/sched/deadline.c
+++ b/kernel/sched/deadline.c
@@ -2513,7 +2513,7 @@ int sched_dl_global_validate(void)
* cycling on root_domains... Discussion on different/better
* solutions is welcome!
*/
- for_each_possible_cpu(cpu) {
+ for_each_online_cpu(cpu) {
rcu_read_lock_sched();
dl_b = dl_bw_of(cpu);
cpus = dl_bw_cpus(cpu);