[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4b81bea4-ef05-4801-8903-2affa02d2366@nvidia.com>
Date: Thu, 17 Jul 2025 18:56:42 +0300
From: Carolina Jubran <cjubran@...dia.com>
To: Paolo Abeni <pabeni@...hat.com>, Tariq Toukan <tariqt@...dia.com>,
Eric Dumazet <edumazet@...gle.com>, Jakub Kicinski <kuba@...nel.org>,
Andrew Lunn <andrew+netdev@...n.ch>, "David S. Miller" <davem@...emloft.net>
Cc: Saeed Mahameed <saeedm@...dia.com>, Leon Romanovsky <leon@...nel.org>,
Mark Bloch <mbloch@...dia.com>, Richard Cochran <richardcochran@...il.com>,
netdev@...r.kernel.org, linux-rdma@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH net-next 3/3] net/mlx5: Support getcyclesx and
getcrosscycles
On 17/07/2025 13:55, Paolo Abeni wrote:
> On 7/15/25 7:15 AM, Tariq Toukan wrote:
>> From: Carolina Jubran <cjubran@...dia.com>
>>
>> Implement the getcyclesx64 and getcrosscycles callbacks in ptp_info to
>> expose the device’s raw free-running counter.
>>
>> Signed-off-by: Carolina Jubran <cjubran@...dia.com>
>> Reviewed-by: Dragos Tatulea <dtatulea@...dia.com>
>> Signed-off-by: Tariq Toukan <tariqt@...dia.com>
>> ---
>> .../ethernet/mellanox/mlx5/core/lib/clock.c | 74 ++++++++++++++++++-
>> 1 file changed, 73 insertions(+), 1 deletion(-)
>>
>> diff --git a/drivers/net/ethernet/mellanox/mlx5/core/lib/clock.c b/drivers/net/ethernet/mellanox/mlx5/core/lib/clock.c
>> index b1e2deeefc0c..2f75726674a9 100644
>> --- a/drivers/net/ethernet/mellanox/mlx5/core/lib/clock.c
>> +++ b/drivers/net/ethernet/mellanox/mlx5/core/lib/clock.c
>> @@ -306,6 +306,23 @@ static int mlx5_mtctr_syncdevicetime(ktime_t *device_time,
>> return 0;
>> }
>>
>> +static int
>> +mlx5_mtctr_syncdevicecyclestime(ktime_t *device_time,
>> + struct system_counterval_t *sys_counterval,
>> + void *ctx)
>> +{
>> + struct mlx5_core_dev *mdev = ctx;
>> + u64 device;
>> + int err;
>> +
>> + err = mlx5_mtctr_read(mdev, false, sys_counterval, &device);
>> + if (err)
>> + return err;
>> + *device_time = ns_to_ktime(device);
>
> If the goal is providing a raw cycle counter, why still using a timespec
> to the user space? A plain u64 would possibly be less ambiguous.
>
> /P
>
getcycles64 and getcrosscycles already return the cycle counter in a
timespec64/ktime format, so I kept the new ioctls consistent with them.
Powered by blists - more mailing lists