From: Rodolfo Giometti <giometti@enneenne.com>
To: David Woodhouse <dwmw2@infradead.org>,
Richard Cochran <richardcochran@gmail.com>,
Andrew Lunn <andrew+netdev@lunn.ch>,
"David S. Miller" <davem@davemloft.net>,
Eric Dumazet <edumazet@google.com>,
Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>,
John Stultz <jstultz@google.com>,
Thomas Gleixner <tglx@kernel.org>,
Stephen Boyd <sboyd@kernel.org>,
Miroslav Lichvar <mlichvar@redhat.com>,
linux-kernel@vger.kernel.org, netdev@vger.kernel.org,
Alexander Gordeev <agordeev@linux.ibm.com>
Cc: David Woodhouse <dwmw@amazon.co.uk>
Subject: Re: [PATCH v4 3/4] pps: Always use ktime_get_snapshot_id() for pps_get_ts()
Date: Tue, 1 Sep 2026 17:35:29 +0200 [thread overview]
Message-ID: <920a2d70-c1ec-452b-8fc4-aebf1f6af412@enneenne.com> (raw)
In-Reply-To: <20260829210041.40649-4-dwmw2@infradead.org>
On Sat, 2026-08-29 at 21:57 +0100, David Woodhouse wrote:
> Rather than using that more accurate timestamp *only* in the case where
> CONFIG_NTP_PPS is enabled, do so unconditionally.
>
> static inline void pps_get_ts(struct pps_event_time *ts)
> {
> -#ifdef CONFIG_NTP_PPS
> struct system_time_snapshot snap;
>
> ktime_get_snapshot_id(CLOCK_REALTIME, &snap);
> ts->ts_real = ktime_to_timespec64(snap.systime);
> +#ifdef CONFIG_NTP_PPS
> ts->ts_raw = ktime_to_timespec64(snap.monoraw);
> -#else
> - ktime_get_real_ts64(&ts->ts_real);
> #endif
> }
Why are you removing ktime_get_real_ts64()?
The commit message says you are using the more accurate timestamp
unconditionally. What the diff does is delete the !CONFIG_NTP_PPS
branch. Those are not the same thing, and the second one changes an
ABI: ts_real reaches userspace through PPS_FETCH on /dev/ppsN and
through /sys/class/pps/ppsX/assert, documented in
Documentation/ABI/testing/sysfs-pps and unchanged since 2008. Until
now it came from ktime_get_real_ts64(), the same clock userspace reads
with clock_gettime(CLOCK_REALTIME). After your patch it does not.
That needs a good reason and the commit message does not give one.
Give me that first. Until then the details do not matter.
Separately: are we sure that calling ktime_get_snapshot_id() does not
introduce much larger delays than ktime_get_real_ts64()? pps_get_ts()
runs in hard IRQ, and in pps-gpio it is the first statement of the
handler. Whatever it costs sits between the edge and the timestamp,
and that is the one thing PPS has to keep short.
I would like to see that measured on something other than an x86 VM
with a TSC. A small 32-bit ARM board is what I worry about.
Rodolfo
next prev parent reply other threads:[~2026-09-01 15:38 UTC|newest]
Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-29 20:56 [PATCH v4 0/4] Add ntp_error to clock snapshot, enable NTP_PPS on tickless kernel David Woodhouse
2026-08-29 20:56 ` [PATCH v4 1/4] timekeeping: Apply extrapolated ntp_error to clock snapshots David Woodhouse
2026-08-29 20:57 ` [PATCH v4 2/4] pps: Drop the !NO_HZ_COMMON dependency from NTP_PPS David Woodhouse
2026-09-01 15:35 ` Rodolfo Giometti
2026-09-02 0:13 ` David Woodhouse
2026-09-28 13:37 ` David Woodhouse
2026-09-28 16:41 ` Rodolfo Giometti
2026-09-28 19:28 ` David Woodhouse
2026-09-29 6:33 ` Rodolfo Giometti
2026-09-29 9:32 ` David Woodhouse
2026-09-29 11:48 ` Rodolfo Giometti
2026-09-29 12:02 ` David Woodhouse
2026-09-30 1:28 ` David Woodhouse
2026-09-30 12:57 ` Rodolfo Giometti
2026-09-30 10:37 ` David Woodhouse
2026-09-30 12:57 ` Rodolfo Giometti
2026-09-30 14:05 ` David Woodhouse
2026-09-30 18:24 ` David Woodhouse
2026-10-01 8:20 ` Rodolfo Giometti
2026-10-01 9:08 ` David Woodhouse
2026-08-29 20:57 ` [PATCH v4 3/4] pps: Always use ktime_get_snapshot_id() for pps_get_ts() David Woodhouse
2026-09-01 15:35 ` Rodolfo Giometti [this message]
2026-09-01 23:56 ` David Woodhouse
2026-09-26 20:38 ` David Woodhouse
2026-09-28 7:58 ` Rodolfo Giometti
2026-09-28 12:59 ` David Woodhouse
2026-09-28 16:41 ` Rodolfo Giometti
2026-10-01 13:14 ` Miroslav Lichvar
2026-10-01 15:38 ` David Woodhouse
2026-10-02 7:04 ` Rodolfo Giometti
2026-10-02 9:07 ` David Woodhouse
2026-10-02 12:29 ` David Woodhouse
2026-10-02 13:44 ` David Woodhouse
2026-10-03 11:29 ` David Woodhouse
2026-10-05 9:16 ` Miroslav Lichvar
2026-08-29 20:57 ` [PATCH v4 4/4] [DO NOT MERGE] ptp: ptp_vmclock: Add simulated 1PPS support David Woodhouse
2026-09-01 15:35 ` [PATCH v4 0/4] Add ntp_error to clock snapshot, enable NTP_PPS on tickless kernel Rodolfo Giometti
2026-09-01 23:37 ` David Woodhouse
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=920a2d70-c1ec-452b-8fc4-aebf1f6af412@enneenne.com \
--to=giometti@enneenne.com \
--cc=agordeev@linux.ibm.com \
--cc=andrew+netdev@lunn.ch \
--cc=davem@davemloft.net \
--cc=dwmw2@infradead.org \
--cc=dwmw@amazon.co.uk \
--cc=edumazet@google.com \
--cc=jstultz@google.com \
--cc=kuba@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mlichvar@redhat.com \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=richardcochran@gmail.com \
--cc=sboyd@kernel.org \
--cc=tglx@kernel.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.