[patch 04/24] pps: Convert to ktime_get_snapshot_id()

From: Thomas Gleixner

Date: Tue May 26 2026 - 13:16:58 EST


ktime_get_snapshot() resolves to ktime_get_snapshot_id(CLOCK_REALTIME).

Make it obvious in the code and convert the readout to use the
snapshot::sys field instead of snapshot::real, which is going away.

Similar to the PPS generators, avoid the more expensive snapshot when
CONFIG_NTP_PPS is disabled.

No functional change intended.

Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxx>
Cc: Rodolfo Giometti <giometti@xxxxxxxxxxxx>
---
include/linux/pps_kernel.h | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)

--- a/include/linux/pps_kernel.h
+++ b/include/linux/pps_kernel.h
@@ -99,12 +99,14 @@ static inline void timespec_to_pps_ktime

static inline void pps_get_ts(struct pps_event_time *ts)
{
+#ifdef CONFIG_NTP_PPS
struct system_time_snapshot snap;

- ktime_get_snapshot(&snap);
- ts->ts_real = ktime_to_timespec64(snap.real);
-#ifdef CONFIG_NTP_PPS
+ ktime_get_snapshot_id(&snap, CLOCK_REALTIME);
+ ts->ts_real = ktime_to_timespec64(snap.sys);
ts->ts_raw = ktime_to_timespec64(snap.raw);
+#else
+ ktime_get_real_ts64(&ts->ts_real);
#endif
}