Commit ffa0519b authored by Thomas Gleixner's avatar Thomas Gleixner
Browse files

timekeeping: Provide ktime_get_ntp_seconds()



ntp_adjtimex() requires access to the actual time keeper per timekeeper
ID. Provide an interface.

Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
Link: https://lore.kernel.org/all/20250519083026.411809421@linutronix.de
parent 22c62b9a
Loading
Loading
Loading
Loading
+9 −0
Original line number Diff line number Diff line
@@ -2627,6 +2627,15 @@ int do_adjtimex(struct __kernel_timex *txc)
	return ret;
}

/*
 * Invoked from NTP with the time keeper lock held, so lockless access is
 * fine.
 */
long ktime_get_ntp_seconds(unsigned int id)
{
	return timekeeper_data[id].timekeeper.xtime_sec;
}

#ifdef CONFIG_NTP_PPS
/**
 * hardpps() - Accessor function to NTP __hardpps function
+3 −0
Original line number Diff line number Diff line
@@ -45,4 +45,7 @@ static inline u64 clocksource_delta(u64 now, u64 last, u64 mask, u64 max_delta)
unsigned long timekeeper_lock_irqsave(void);
void timekeeper_unlock_irqrestore(unsigned long flags);

/* NTP specific interface to access the current seconds value */
long ktime_get_ntp_seconds(unsigned int id);

#endif /* _TIMEKEEPING_INTERNAL_H */