summaryrefslogtreecommitdiff
path: root/kernel/sched/core.c
diff options
context:
space:
mode:
authorJuri Lelli <juri.lelli@redhat.com>2025-06-27 13:51:14 +0200
committerPeter Zijlstra <peterz@infradead.org>2025-07-14 10:59:32 +0200
commit9f239df55546ee1d28f0976130136ffd1cad0fd7 (patch)
treef1c2e95b8bcd581353fe2134503b1a5638e4ccff /kernel/sched/core.c
parent2885daf47081dd1aaf1a588e9d001eb343df1f90 (diff)
downloadlinux-9f239df55546ee1d28f0976130136ffd1cad0fd7.tar.gz
linux-9f239df55546ee1d28f0976130136ffd1cad0fd7.tar.bz2
linux-9f239df55546ee1d28f0976130136ffd1cad0fd7.zip
sched/deadline: Initialize dl_servers after SMP
dl-servers are currently initialized too early at boot when CPUs are not fully up (only boot CPU is). This results in miscalculation of per runqueue DEADLINE variables like extra_bw (which needs a stable CPU count). Move initialization of dl-servers later on after SMP has been initialized and CPUs are all online, so that CPU count is stable and DEADLINE variables can be computed correctly. Fixes: d741f297bceaf ("sched/fair: Fair server interface") Reported-by: Marcel Ziswiler <marcel.ziswiler@codethink.co.uk> Signed-off-by: Juri Lelli <juri.lelli@redhat.com> Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> Acked-by: Waiman Long <longman@redhat.com> Tested-by: Marcel Ziswiler <marcel.ziswiler@codethink.co.uk> # nuc & rock5b Link: https://lore.kernel.org/r/20250627115118.438797-2-juri.lelli@redhat.com
Diffstat (limited to 'kernel/sched/core.c')
-rw-r--r--kernel/sched/core.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/kernel/sched/core.c b/kernel/sched/core.c
index 2f8caa9db78d..89b3ed637465 100644
--- a/kernel/sched/core.c
+++ b/kernel/sched/core.c
@@ -8371,6 +8371,8 @@ void __init sched_init_smp(void)
init_sched_rt_class();
init_sched_dl_class();
+ sched_init_dl_servers();
+
sched_smp_initialized = true;
}