From: Takahiro Itazuri <itazur@amazon.com>
To: <robh@kernel.org>, <krzk+dt@kernel.org>, <conor+dt@kernel.org>,
<andrew+netdev@lunn.ch>, <davem@davemloft.net>,
<edumazet@google.com>, <kuba@kernel.org>, <pabeni@redhat.com>
Cc: <devicetree@vger.kernel.org>, <netdev@vger.kernel.org>,
<linux-kernel@vger.kernel.org>, Babis Chalios <mail@bchalios.io>,
"Alexander Graf" <graf@amazon.de>, <mzxreary@0pointer.de>,
Marco Cali <xmarcalx@amazon.co.uk>,
David Woodhouse <dwmw@amazon.co.uk>,
"Takahiro Itazuri" <itazur@amazon.com>
Subject: [PATCH v7 7/7] ptp: ptp_vmclock: return TAI not UTC
Date: Fri, 30 Jan 2026 17:36:06 +0000 [thread overview]
Message-ID: <20260130173704.12575-8-itazur@amazon.com> (raw)
In-Reply-To: <20260130173704.12575-1-itazur@amazon.com>
From: David Woodhouse <dwmw@amazon.co.uk>
To output UTC would involve complex calculations about whether the time
elapsed since the reference time has crossed the end of the month when
a leap second takes effect. I've prototyped that, but it made me sad.
Much better to report TAI, which is what PHCs should do anyway.
And much much simpler.
Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
Signed-off-by: Babis Chalios <bchalios@amazon.es>
Tested-by: Takahiro Itazuri <itazur@amazon.com>
---
drivers/ptp/ptp_vmclock.c | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/drivers/ptp/ptp_vmclock.c b/drivers/ptp/ptp_vmclock.c
index b6e9d4c96..c7c75e19f 100644
--- a/drivers/ptp/ptp_vmclock.c
+++ b/drivers/ptp/ptp_vmclock.c
@@ -83,13 +83,13 @@ static uint64_t mul_u64_u64_shr_add_u64(uint64_t *res_hi, uint64_t delta,
static bool tai_adjust(struct vmclock_abi *clk, uint64_t *sec)
{
- if (likely(clk->time_type == VMCLOCK_TIME_UTC))
+ if (clk->time_type == VMCLOCK_TIME_TAI)
return true;
- if (clk->time_type == VMCLOCK_TIME_TAI &&
+ if (clk->time_type == VMCLOCK_TIME_UTC &&
(le64_to_cpu(clk->flags) & VMCLOCK_FLAG_TAI_OFFSET_VALID)) {
if (sec)
- *sec += (int16_t)le16_to_cpu(clk->tai_offset_sec);
+ *sec -= (int16_t)le16_to_cpu(clk->tai_offset_sec);
return true;
}
return false;
@@ -350,9 +350,9 @@ static struct ptp_clock *vmclock_ptp_register(struct device *dev,
return NULL;
}
- /* Only UTC, or TAI with offset */
+ /* Accept TAI directly, or UTC with valid offset for conversion to TAI */
if (!tai_adjust(st->clk, NULL)) {
- dev_info(dev, "vmclock does not provide unambiguous UTC\n");
+ dev_info(dev, "vmclock does not provide unambiguous time\n");
return NULL;
}
--
2.50.1
next prev parent reply other threads:[~2026-01-30 17:38 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-01-30 17:35 [PATCH v7 0/7] ptp: vmclock: Add VM generation counter and ACPI notification Takahiro Itazuri
2026-01-30 17:36 ` [PATCH v7 1/7] ptp: vmclock: add vm generation counter Takahiro Itazuri
2026-01-30 17:36 ` [PATCH v7 2/7] ptp: vmclock: support device notifications Takahiro Itazuri
2026-01-30 17:36 ` [PATCH v7 3/7] dt-bindings: ptp: Add amazon,vmclock Takahiro Itazuri
2026-01-30 17:36 ` [PATCH v7 4/7] ptp: ptp_vmclock: Add device tree support Takahiro Itazuri
2026-01-30 17:36 ` [PATCH v7 5/7] ptp: ptp_vmclock: add 'VMCLOCK' to ACPI device match Takahiro Itazuri
2026-01-30 17:36 ` [PATCH v7 6/7] ptp: ptp_vmclock: remove dependency on CONFIG_ACPI Takahiro Itazuri
2026-01-30 17:36 ` Takahiro Itazuri [this message]
2026-02-03 2:10 ` [PATCH v7 0/7] ptp: vmclock: Add VM generation counter and ACPI notification patchwork-bot+netdevbpf
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=20260130173704.12575-8-itazur@amazon.com \
--to=itazur@amazon.com \
--cc=andrew+netdev@lunn.ch \
--cc=conor+dt@kernel.org \
--cc=davem@davemloft.net \
--cc=devicetree@vger.kernel.org \
--cc=dwmw@amazon.co.uk \
--cc=edumazet@google.com \
--cc=graf@amazon.de \
--cc=krzk+dt@kernel.org \
--cc=kuba@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mail@bchalios.io \
--cc=mzxreary@0pointer.de \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=robh@kernel.org \
--cc=xmarcalx@amazon.co.uk \
/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.