diff options
| author | Shrikanth Hegde <sshegde@linux.ibm.com> | 2025-03-06 10:59:53 +0530 |
|---|---|---|
| committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2025-04-10 14:29:42 +0200 |
| commit | 0ab44f03c50fceb8c8bd27ea9b61039c5c611cf0 (patch) | |
| tree | 107d619a53267148339a8d0fafc6f79b03870397 /kernel | |
| parent | 04039a38068a10612a7689aa72c111ff700694c3 (diff) | |
| download | linux-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.c | 2 |
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); |
