From: Tony Rodriguez <unixpro1970@gmail.com> To: Thomas Gleixner <tglx@kernel.org> Cc: Linux kernel regressions list <regressions@lists.linux.dev>, LKML <linux-kernel@vger.kernel.org>, sparclinux@vger.kernel.org, John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>, Thorsten Leemhuis <regressions@leemhuis.info>, Linus Torvalds <torvalds@linux-foundation.org> Subject: Re: the stuttering regression in 7.0: should I have done something different Date: Thu, 14 May 2026 21:47:23 -0700 [thread overview] Message-ID: <0669f754-a313-4aa3-9923-0c374d49feb3@gmail.com> (raw) In-Reply-To: <87qznez3tf.ffs@tglx> Hi Thomas, I’ve completed validation with the v7.0.7 release and v7.1‑rc3 on both S7‑2 and T7‑1 systems. Everything looks good. Thank you again for the debugging guidance and for the feedback on my original patch addressing the timer starvation issue. It was a pleasure contributing to the resolution. PS: I agree that the second patch we discussed isn’t needed—the systems run correctly without it. The following patch alone is sufficient: Best regards, Tony Rodriguez --- linux-7.1-rc1/arch/sparc/kernel/time_64.c.orig +++ linux-7.1-rc1/arch/sparc/kernel/time_64.c @@ -146,7 +146,7 @@ : "=r" (new_tick)); new_tick &= ~TICKCMP_IRQ_BIT; - return ((long)(new_tick - (orig_tick+adj))) > 0L; + return ((long)(new_tick - (orig_tick+adj))) >= 0L; } static unsigned long tick_add_tick(unsigned long adj) @@ -277,7 +277,7 @@ : "=r" (new_tick)); new_tick &= ~TICKCMP_IRQ_BIT; - return ((long)(new_tick - (orig_tick+adj))) > 0L; + return ((long)(new_tick - (orig_tick+adj))) >= 0L; } static unsigned long stick_get_frequency(void) @@ -411,7 +411,7 @@ val2 = __hbird_read_stick() & ~TICKCMP_IRQ_BIT; - return ((long)(val2 - val)) > 0L; + return ((long)(val2 - val)) >= 0L; } static unsigned long hbtick_get_frequency(void)