diff --git a/kernel/time/tick-common.c b/kernel/time/tick-common.c index ad66a51ca4fa5741048f9b90c9573594e263a723..3ae6afa1eb98e71cc82272cd0a79a25101eff429 100644 --- a/kernel/time/tick-common.c +++ b/kernel/time/tick-common.c @@ -457,11 +457,10 @@ void tick_freeze(void) raw_spin_lock(&tick_freeze_lock); tick_freeze_depth++; - if (tick_freeze_depth == num_online_cpus()) { + if (tick_freeze_depth == num_online_cpus()) timekeeping_suspend(); - } else { + else tick_suspend_local(); - } raw_spin_unlock(&tick_freeze_lock); }