summaryrefslogtreecommitdiffstats
path: root/kernel/cpu.c
diff options
context:
space:
mode:
authorFrederic Weisbecker <frederic@kernel.org>2024-02-25 23:55:01 +0100
committerThomas Gleixner <tglx@linutronix.de>2024-02-26 11:37:32 +0100
commitef8969bb552c1c75e997a42d3e2c576b6ed4025a (patch)
tree969260dacad03dee49c8d6195de0b70d6f3ac7f9 /kernel/cpu.c
parentf04e51220ad5cf35540f67f3ca15c8617c1f0bef (diff)
downloadlinux-stable-ef8969bb552c1c75e997a42d3e2c576b6ed4025a.tar.gz
linux-stable-ef8969bb552c1c75e997a42d3e2c576b6ed4025a.tar.bz2
linux-stable-ef8969bb552c1c75e997a42d3e2c576b6ed4025a.zip
tick: Move broadcast cancellation up to CPUHP_AP_TICK_DYING
The broadcast shutdown code is executed through a random explicit call within stop machine from the outgoing CPU. However the tick broadcast is a midware between the tick callback and the clocksource, therefore it makes more sense to shut it down after the tick callback and before the clocksource drivers. Move it instead to the common tick shutdown CPU hotplug state where related operations can be ordered from highest to lowest level. Signed-off-by: Frederic Weisbecker <frederic@kernel.org> Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Reviewed-by: Thomas Gleixner <tglx@linutronix.de> Link: https://lore.kernel.org/r/20240225225508.11587-10-frederic@kernel.org
Diffstat (limited to 'kernel/cpu.c')
-rw-r--r--kernel/cpu.c2
1 files changed, 0 insertions, 2 deletions
diff --git a/kernel/cpu.c b/kernel/cpu.c
index 263508073da8..5a8ad4f5ccf3 100644
--- a/kernel/cpu.c
+++ b/kernel/cpu.c
@@ -1324,8 +1324,6 @@ static int take_cpu_down(void *_param)
*/
cpuhp_invoke_callback_range_nofail(false, cpu, st, target);
- /* Remove CPU from timer broadcasting */
- tick_offline_cpu(cpu);
/* Park the stopper thread */
stop_machine_park(cpu);
return 0;