Re: [PATCH v4 2/4] pps: Drop the !NO_HZ_COMMON dependency from NTP_PPS
From: David Woodhouse
Date: Wed Sep 30 2026 - 06:40:37 EST
On Tue, 2026-09-29 at 13:48 +0200, Rodolfo Giometti wrote:
> Hi David,
>
> On 29/09/2026 11:32, David Woodhouse wrote:
> > When second_overflow() is delivering skew, timekeeping_max_deferment()
> > should trigger a wakeup at the end of the second to ensure that the
> > skew gets recalculated — rather than leaving it active indefinitely.
>
> Please put this fix in the series before 2/4, as for the tick_length
> one.
>
> > So the results at https://david.woodhou.se/ntptest-r64/tickless/ need
> > to be redone, but you can take a look and shout if you want me to
> > change what I'm capturing or how I'm doing it.
>
> What you capture is fine for me: the adjtimex state (offset, jitter,
> stabil, errcnt) plus the per-pulse phase are what I wanted to see.
>
> Two questions for the rerun:
>
> - wouldn't it be better to also have the tickful baseline with the same
> board, the same GPS and the same pulse period, so the numbers can be
> compared directly?
>
> - since typical PPS sources deliver 1 Hz, don't you think it would be
> better to also do one run with the timepulse at 1 Hz?
Three parts of the 2x2 grid are now at
• https://david.woodhou.se/ntptest-r64/tickful-1hz/
• https://david.woodhou.se/ntptest-r64/tickless-1hz/
• https://david.woodhou.se/ntptest-r64/tickless-5s/
The fourth is running now, about 90 minutes in. After which I might
play with that IRQF_HWTIMESTAMP thing, because they're *all* seeing a
bunch of late pulses (and the tickless ones are doing all the
timekeeping catchup before they even capture the pulse timestamp, some
of which gets hidden as common mode latency):
┌────────────────┬────────┬─────────┬─────────┬────────┐
│ cell │ p50 │ p95 │ p99 │ >3 µs │
├────────────────┼────────┼─────────┼─────────┼────────┤
│ tickless, 5 s │ 728 ns │ 4188 ns │ 4847 ns │ 14.5 % │
├────────────────┼────────┼─────────┼─────────┼────────┤
│ tickless, 1 Hz │ 294 ns │ 2258 ns │ 4837 ns │ 3.6 % │
├────────────────┼────────┼─────────┼─────────┼────────┤
│ tickful, 1 Hz │ 84 ns │ 1206 ns │ 4012 ns │ 2.0 % │
└────────────────┴────────┴─────────┴─────────┴────────┘
But ultimately, the hardpps discipline appears to be working fine with
full nohz idle, even when we dial down the pulse *itself* to 0.2Hz to
actually let the box sleep for 5s at a time.
Attachment:
smime.p7s
Description: S/MIME cryptographic signature