[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <3eb5379f-c7ad-4aea-ab9a-20e07b7f34d0@linux.dev>
Date: Mon, 10 Nov 2025 23:37:33 +0000
From: Vadim Fedorenko <vadim.fedorenko@...ux.dev>
To: Andy Shevchenko <andriy.shevchenko@...ux.intel.com>,
Corey Minyard <corey@...yard.net>, Christian König
<christian.koenig@....com>, "Dr. David Alan Gilbert" <linux@...blig.org>,
Alex Deucher <alexander.deucher@....com>,
Thomas Zimmermann <tzimmermann@...e.de>,
Dmitry Baryshkov <dmitry.baryshkov@....qualcomm.com>,
Rob Clark <robin.clark@....qualcomm.com>,
Matthew Brost <matthew.brost@...el.com>, Hans Verkuil <hverkuil@...nel.org>,
Laurent Pinchart <laurent.pinchart+renesas@...asonboard.com>,
Ulf Hansson <ulf.hansson@...aro.org>,
Vitaly Lifshits <vitaly.lifshits@...el.com>,
Manivannan Sadhasivam <mani@...nel.org>, Niklas Cassel <cassel@...nel.org>,
Calvin Owens <calvin@...nvd.org>, Sagi Maimon <maimon.sagi@...il.com>,
"Martin K. Petersen" <martin.petersen@...cle.com>,
Karan Tilak Kumar <kartilak@...co.com>,
Casey Schaufler <casey@...aufler-ca.com>,
Steven Rostedt <rostedt@...dmis.org>, Petr Mladek <pmladek@...e.com>,
Max Kellermann <max.kellermann@...os.com>, Takashi Iwai <tiwai@...e.de>,
linux-doc@...r.kernel.org, linux-kernel@...r.kernel.org,
openipmi-developer@...ts.sourceforge.net, linux-media@...r.kernel.org,
dri-devel@...ts.freedesktop.org, linaro-mm-sig@...ts.linaro.org,
amd-gfx@...ts.freedesktop.org, linux-arm-msm@...r.kernel.org,
freedreno@...ts.freedesktop.org, intel-xe@...ts.freedesktop.org,
linux-mmc@...r.kernel.org, netdev@...r.kernel.org,
intel-wired-lan@...ts.osuosl.org, linux-pci@...r.kernel.org,
linux-s390@...r.kernel.org, linux-scsi@...r.kernel.org,
linux-staging@...ts.linux.dev, ceph-devel@...r.kernel.org,
linux-trace-kernel@...r.kernel.org, linux-sound@...r.kernel.org
Cc: Rasmus Villemoes <linux@...musvillemoes.dk>,
Sergey Senozhatsky <senozhatsky@...omium.org>,
Jonathan Corbet <corbet@....net>, Sumit Semwal <sumit.semwal@...aro.org>,
Gustavo Padovan <gustavo@...ovan.org>, David Airlie <airlied@...il.com>,
Simona Vetter <simona@...ll.ch>,
Maarten Lankhorst <maarten.lankhorst@...ux.intel.com>,
Maxime Ripard <mripard@...nel.org>, Dmitry Baryshkov <lumag@...nel.org>,
Abhinav Kumar <abhinav.kumar@...ux.dev>,
Jessica Zhang <jesszhan0024@...il.com>, Sean Paul <sean@...rly.run>,
Marijn Suijten <marijn.suijten@...ainline.org>,
Konrad Dybcio <konradybcio@...nel.org>,
Lucas De Marchi <lucas.demarchi@...el.com>,
Thomas Hellström <thomas.hellstrom@...ux.intel.com>,
Rodrigo Vivi <rodrigo.vivi@...el.com>,
Mauro Carvalho Chehab <mchehab@...nel.org>,
Vladimir Oltean <olteanv@...il.com>, Andrew Lunn <andrew@...n.ch>,
"David S. Miller" <davem@...emloft.net>, Eric Dumazet <edumazet@...gle.com>,
Jakub Kicinski <kuba@...nel.org>, Paolo Abeni <pabeni@...hat.com>,
Tony Nguyen <anthony.l.nguyen@...el.com>,
Przemek Kitszel <przemyslaw.kitszel@...el.com>,
Krzysztof Wilczyński <kwilczynski@...nel.org>,
Kishon Vijay Abraham I <kishon@...nel.org>,
Bjorn Helgaas <bhelgaas@...gle.com>, Rodolfo Giometti
<giometti@...eenne.com>, Jonathan Lemon <jonathan.lemon@...il.com>,
Richard Cochran <richardcochran@...il.com>,
Stefan Haberland <sth@...ux.ibm.com>, Jan Hoeppner <hoeppner@...ux.ibm.com>,
Heiko Carstens <hca@...ux.ibm.com>, Vasily Gorbik <gor@...ux.ibm.com>,
Alexander Gordeev <agordeev@...ux.ibm.com>,
Christian Borntraeger <borntraeger@...ux.ibm.com>,
Sven Schnelle <svens@...ux.ibm.com>, Satish Kharat <satishkh@...co.com>,
Sesidhar Baddela <sebaddel@...co.com>,
"James E.J. Bottomley" <James.Bottomley@...senPartnership.com>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>, Xiubo Li
<xiubli@...hat.com>, Ilya Dryomov <idryomov@...il.com>,
Masami Hiramatsu <mhiramat@...nel.org>,
Mathieu Desnoyers <mathieu.desnoyers@...icios.com>,
Andrew Morton <akpm@...ux-foundation.org>, Jaroslav Kysela <perex@...ex.cz>,
Takashi Iwai <tiwai@...e.com>
Subject: Re: [PATCH v1 19/23] ptp: ocp: Switch to use %ptSp
On 10/11/2025 18:40, Andy Shevchenko wrote:
> Use %ptSp instead of open coded variants to print content of
> struct timespec64 in human readable format.
>
> While at it, fix wrong use of %ptT against struct timespec64.
> It's kinda lucky that it worked just because the first member
> there 64-bit and it's of time64_t type. Now with %ptS it may
> be used correctly.
>
> Signed-off-by: Andy Shevchenko <andriy.shevchenko@...ux.intel.com>
> ---
> drivers/ptp/ptp_ocp.c | 15 ++++++---------
> 1 file changed, 6 insertions(+), 9 deletions(-)
>
> diff --git a/drivers/ptp/ptp_ocp.c b/drivers/ptp/ptp_ocp.c
> index a5c363252986..a0bb8d3045d2 100644
> --- a/drivers/ptp/ptp_ocp.c
> +++ b/drivers/ptp/ptp_ocp.c
> @@ -3261,7 +3261,7 @@ signal_show(struct device *dev, struct device_attribute *attr, char *buf)
> signal->duty, signal->phase, signal->polarity);
>
> ts = ktime_to_timespec64(signal->start);
> - count += sysfs_emit_at(buf, count, " %ptT TAI\n", &ts);
> + count += sysfs_emit_at(buf, count, " %ptS TAI\n", &ts);
>
> return count;
> }
> @@ -4287,11 +4287,9 @@ ptp_ocp_summary_show(struct seq_file *s, void *data)
> ns += (s64)bp->utc_tai_offset * NSEC_PER_SEC;
> sys_ts = ns_to_timespec64(ns);
>
> - seq_printf(s, "%7s: %lld.%ld == %ptT TAI\n", "PHC",
> - ts.tv_sec, ts.tv_nsec, &ts);
> - seq_printf(s, "%7s: %lld.%ld == %ptT UTC offset %d\n", "SYS",
> - sys_ts.tv_sec, sys_ts.tv_nsec, &sys_ts,
> - bp->utc_tai_offset);
> + seq_printf(s, "%7s: %ptSp == %ptS TAI\n", "PHC", &ts, &ts);
> + seq_printf(s, "%7s: %ptSp == %ptS UTC offset %d\n", "SYS",
> + &sys_ts, &sys_ts, bp->utc_tai_offset);
> seq_printf(s, "%7s: PHC:SYS offset: %lld window: %lld\n", "",
> timespec64_to_ns(&ts) - ns,
> post_ns - pre_ns);
> @@ -4499,9 +4497,8 @@ ptp_ocp_phc_info(struct ptp_ocp *bp)
> ptp_clock_index(bp->ptp));
>
> if (!ptp_ocp_gettimex(&bp->ptp_info, &ts, NULL))
> - dev_info(&bp->pdev->dev, "Time: %lld.%ld, %s\n",
> - ts.tv_sec, ts.tv_nsec,
> - bp->sync ? "in-sync" : "UNSYNCED");
> + dev_info(&bp->pdev->dev, "Time: %ptSp, %s\n",
> + &ts, bp->sync ? "in-sync" : "UNSYNCED");
> }
>
> static void
Acked-by: Vadim Fedorenko <vadim.fedorenko@...ux.dev>
Powered by blists - more mailing lists