]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
ptp: ptp_vmclock: Convert to ktime_get_snapshot_id()
authorThomas Gleixner <tglx@kernel.org>
Fri, 29 May 2026 20:00:16 +0000 (22:00 +0200)
committerThomas Gleixner <tglx@kernel.org>
Thu, 4 Jun 2026 09:04:16 +0000 (11:04 +0200)
ktime_get_snapshot() is replaced by ktime_get_snapshot_id() which allows to
request a particular CLOCK ID to be captured along with the clocksource
counter.

Convert vmclock over and use the new system_time_snapshot::systime field,
which holds the system timestamp selected by the CLOCK ID argument.

No functional change intended.

Signed-off-by: Thomas Gleixner <tglx@kernel.org>
Tested-by: David Woodhouse <dwmw@amazon.co.uk>
Tested-by: Arthur Kiyanovski <akiyano@amazon.com>
Reviewed-by: David Woodhouse <dwmw@amazon.co.uk>
Reviewed-by: Thomas Weißschuh <thomas.weissschuh@linutronix.de>
Reviewed-by: Jacob Keller <jacob.e.keller@intel.com>
Link: https://patch.msgid.link/20260529195557.281425262@kernel.org
drivers/ptp/ptp_vmclock.c

index 8b630eb916b507694eed240bc43370b6e89056d4..0f12b54be740ea2fe74ad171145f27fff5d72a2a 100644 (file)
@@ -132,7 +132,7 @@ static int vmclock_get_crosststamp(struct vmclock_state *st,
                 * will be derived from the *same* counter value.
                 *
                 * If the system isn't using the same counter, then the value
-                * from ktime_get_snapshot() will still be used as pre_ts, and
+                * from ktime_get_snapshot_id() will still be used as pre_ts, and
                 * ptp_read_system_postts() is called to populate postts after
                 * calling get_cycles().
                 *
@@ -140,7 +140,7 @@ static int vmclock_get_crosststamp(struct vmclock_state *st,
                 * the seq_count loop.
                 */
                if (sts) {
-                       ktime_get_snapshot(&systime_snapshot);
+                       ktime_get_snapshot_id(CLOCK_REALTIME, &systime_snapshot);
                        if (systime_snapshot.cs_id == st->cs_id) {
                                cycle = systime_snapshot.cycles;
                        } else {
@@ -181,7 +181,7 @@ static int vmclock_get_crosststamp(struct vmclock_state *st,
        }
 
        if (sts) {
-               sts->pre_ts = ktime_to_timespec64(systime_snapshot.real);
+               sts->pre_ts = ktime_to_timespec64(systime_snapshot.systime);
                if (systime_snapshot.cs_id == st->cs_id)
                        sts->post_ts = sts->pre_ts;
        }
@@ -272,7 +272,7 @@ static int ptp_vmclock_getcrosststamp(struct ptp_clock_info *ptp,
        if (ret == -ENODEV) {
                struct system_time_snapshot systime_snapshot;
 
-               ktime_get_snapshot(&systime_snapshot);
+               ktime_get_snapshot_id(CLOCK_REALTIME, &systime_snapshot);
 
                if (systime_snapshot.cs_id == CSID_X86_TSC ||
                    systime_snapshot.cs_id == CSID_X86_KVM_CLK) {