projects
/
linux-block.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
ffef54a
)
clocksource/drivers/timer-riscv: Stop stimecmp when cpu hotplug
author
Nick Hu
<nick.hu@sifive.com>
Wed, 19 Feb 2025 11:41:35 +0000
(19:41 +0800)
committer
Alexandre Ghiti
<alexghiti@rivosinc.com>
Tue, 18 Mar 2025 12:59:03 +0000
(12:59 +0000)
Stop the timer when the cpu is going to be offline otherwise the
timer interrupt may be pending while performing power-down.
Suggested-by: Anup Patel <anup@brainfault.org>
Link:
https://lore.kernel.org/lkml/20240829033904.477200-3-nick.hu@sifive.com/T/#u
Signed-off-by: Nick Hu <nick.hu@sifive.com>
Reviewed-by: Anup Patel <anup@brainfault.org>
Acked-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Link:
https://lore.kernel.org/r/20250219114135.27764-3-nick.hu@sifive.com
Signed-off-by: Alexandre Ghiti <alexghiti@rivosinc.com>
drivers/clocksource/timer-riscv.c
patch
|
blob
|
blame
|
history
diff --git
a/drivers/clocksource/timer-riscv.c
b/drivers/clocksource/timer-riscv.c
index 48ce50c5f5e68eeec9de696476d424dd5b2c00d0..4d7cf338824a3b21461c2756a002236dedc48f5f 100644
(file)
--- a/
drivers/clocksource/timer-riscv.c
+++ b/
drivers/clocksource/timer-riscv.c
@@
-126,7
+126,13
@@
static int riscv_timer_starting_cpu(unsigned int cpu)
static int riscv_timer_dying_cpu(unsigned int cpu)
{
+ /*
+ * Stop the timer when the cpu is going to be offline otherwise
+ * the timer interrupt may be pending while performing power-down.
+ */
+ riscv_clock_event_stop();
disable_percpu_irq(riscv_clock_event_irq);
+
return 0;
}