sparc64: avoid missed timer interrupts when comparator equals counter
This patch fixes an equal‑compare hazard in the SPARC64 tick/stick comparator
logic that can cause missed timer interrupts and stalled hrtimers.
Full dmesg and crash dumps:
https://github.com/unixpro1970/Sparc64-Kernel-Debugging-Dumps/blob/main/s7-2-05122026-dump.tar.gz
Debugging discussion:
https://lore.kernel.org/all/87tssb6olo.ffs@tglx/
https://lore.kernel.org/all/871pfcznw0.ffs@tglx/
Short dmesg excerpt:
[ 48.632215] rcu: INFO: rcu_sched detected stalls on CPUs/tasks:
[ 48.676018] rcu: rcu_sched kthread timer wakeup didn't happen for 5259 jiffies!
[ 48.743621] rcu: Possible timer handling issue on cpu=100 timer-softirq=15
Test summary:
After applying this patch, S7-2 and T7-1 systems no longer hang on v7 and v7.1 kernels.
Tony Rodriguez (1):
sparc64: Fix tick/stick comparator equal-compare hazard
arch/sparc/kernel/time_64.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
--
2.53.0