From: Thomas Gleixner <tglx@kernel.org>
To: Teddy Astie <teddy.astie@vates.tech>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
regressions@lists.linux.dev
Cc: Xen-devel <xen-devel@lists.xenproject.org>,
Olivier Lambert <olivier.lambert@vates.tech>
Subject: Re: [REGRESSION][BISECTED] Long boot time with Xen HVM guests during PV spinlock initialization
Date: Mon, 08 Jun 2026 17:13:25 +0200 [thread overview]
Message-ID: <87ldcp3w16.ffs@fw13> (raw)
In-Reply-To: <1780914594.8631fc262581453bbf619ec5b2062170.19ea6c8227b000701b@vates.tech>
On Mon, Jun 08 2026 at 12:29, Teddy Astie wrote:
> In 6.12.5+ kernels on AMD CPUs, we observe abnormally long boot times
> where the guest is struggling on PV spinlock initialization.
>
> This occurs starting with 6.12.5, and also on more recent kernels on
> Intel platforms, but that hasn't been fully investigated at this time
> (but I assume it's a variant of the same issue).
>
> This occurs since a backport of 76031d9 ("clocksource: Make negative
> motion detection more robust").
>
> Some (claude-based) analysis made appears to relate that to the lack of
> proper max_raw_delta in the jiffies clocksource which appears to make
> the clock fail to progress meaningfully.
>
> Here is a raw summary of the analysis
> > We tracked it down to a single stable backport in 6.12.5: commit
> 1a678f6829a8 ("clocksource: Make negative motion detection more robust",
> upstream 76031d9536a0). It introduces a max_raw_delta field on struct
> clocksource but never initializes it for the default boot timekeeper
> (the jiffies clocksource), so clocksource_delta() clamps every delta to
> 0 and CLOCK_MONOTONIC freezes while that clocksource is active.
Bah. jiffies clocksource is registered way _after_ timekeeping started to
use it.
The untested below should fix that.
Thanks,
tglx
---
--- a/kernel/time/jiffies.c
+++ b/kernel/time/jiffies.c
@@ -60,15 +60,9 @@ EXPORT_SYMBOL(get_jiffies_64);
EXPORT_SYMBOL(jiffies);
-static int __init init_jiffies_clocksource(void)
-{
- return __clocksource_register(&clocksource_jiffies);
-}
-
-core_initcall(init_jiffies_clocksource);
-
struct clocksource * __init __weak clocksource_default_clock(void)
{
+ clocksource_register(&clocksource_jiffies);
return &clocksource_jiffies;
}
next prev parent reply other threads:[~2026-06-08 15:13 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-06-08 10:29 [REGRESSION][BISECTED] Long boot time with Xen HVM guests during PV spinlock initialization Teddy Astie
2026-06-08 10:57 ` Juergen Gross
2026-06-08 15:13 ` Thomas Gleixner [this message]
2026-06-08 21:29 ` Thomas Gleixner
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87ldcp3w16.ffs@fw13 \
--to=tglx@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=olivier.lambert@vates.tech \
--cc=regressions@lists.linux.dev \
--cc=teddy.astie@vates.tech \
--cc=xen-devel@lists.xenproject.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox