All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] tick: Remove unreasonable detached state set in tick_shutdown()
@ 2025-08-07  3:59 Bibo Mao
  2025-08-11  3:57 ` Bibo Mao
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Bibo Mao @ 2025-08-07  3:59 UTC (permalink / raw)
  To: Anna-Maria Behnsen, Frederic Weisbecker, Ingo Molnar,
	Thomas Gleixner
  Cc: linux-kernel

Function clockevents_switch_state() will check whether it has already
switched to specified state, do nothing if it has.

In function tick_shutdown(), it will set detached state at first and
call clockevents_switch_state() in clockevents_exchange_device(). The
function clockevents_switch_state() will do nothing since it is already
detached state. So the tick timer device will not be shutdown when CPU
is offline. In guest VM system, timer interrupt will prevent vCPU to sleep
if vCPU is hot removed.

Here remove state set before calling clockevents_exchange_device(),
its state will be set in function clockevents_switch_state() if it
succeeds to do so.

Signed-off-by: Bibo Mao <maobibo@loongson.cn>
---
 kernel/time/tick-common.c | 5 -----
 1 file changed, 5 deletions(-)

diff --git a/kernel/time/tick-common.c b/kernel/time/tick-common.c
index 9a3859443c04..eb9b777f5492 100644
--- a/kernel/time/tick-common.c
+++ b/kernel/time/tick-common.c
@@ -424,11 +424,6 @@ void tick_shutdown(unsigned int cpu)
 
 	td->mode = TICKDEV_MODE_PERIODIC;
 	if (dev) {
-		/*
-		 * Prevent that the clock events layer tries to call
-		 * the set mode function!
-		 */
-		clockevent_set_state(dev, CLOCK_EVT_STATE_DETACHED);
 		clockevents_exchange_device(dev, NULL);
 		dev->event_handler = clockevents_handle_noop;
 		td->evtdev = NULL;

base-commit: 7e161a991ea71e6ec526abc8f40c6852ebe3d946
-- 
2.39.3


^ permalink raw reply related	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2025-09-03  9:38 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-08-07  3:59 [PATCH] tick: Remove unreasonable detached state set in tick_shutdown() Bibo Mao
2025-08-11  3:57 ` Bibo Mao
2025-09-02 14:00   ` Frederic Weisbecker
2025-09-02 13:50 ` Frederic Weisbecker
2025-09-02 14:07 ` Frederic Weisbecker
2025-09-03  9:36   ` Bibo Mao

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.