Re: [PATCH RFC v2 1/6] ethtool: add interface to read Tx hardware timestamping statistics

From: Rahul Rameshbabu
Date: Thu Mar 14 2024 - 00:24:06 EST



On Wed, 13 Mar, 2024 18:40:17 -0700 Jakub Kicinski <kuba@xxxxxxxxxx> wrote:
> On Wed, 13 Mar 2024 17:50:39 -0700 Rahul Rameshbabu wrote:
>> > Should we give some guidance to drivers which "ignore" time stamping
>> > requests if they used up all the "slots"? Even if just temporary until
>> > they are fixed? Maybe we can add after all the fields something like:
>> >
>> > For drivers which ignore further timestamping requests when there are
>> > too many in flight, the ignored requests are currently not counted by
>> > any of the statistics.
>>
>> I was actually thinking it would be better to merge them into the error
>> counter temporarily. Reason being is that in the case Intel notices that
>> their slots are full, they just drop traffic from my understanding
>> today. If the error counters increment in that situation, it helps with
>> the debug to a degree. EBUSY is an error in general.
>
> That works, too, let's recommend it (FWIW no preference whether
> in the entry for @err or somewhere separately in the kdoc).

/**
* struct ethtool_ts_stats - HW timestamping statistics
* @tx_stats: struct group for TX HW timestamping
* @pkts: Number of packets successfully timestamped by the hardware.
* @lost: Number of hardware timestamping requests where the timestamping
* information from the hardware never arrived for submission with
* the skb.
* @err: Number of arbitrary timestamp generation error events that the
* hardware encountered, exclusive of @lost statistics. Cases such
* as resource exhaustion, unavailability, firmware errors, and
* detected illogical timestamp values not submitted with the skb
* are inclusive to this counter.
*/

Here is my current draft for the error counter documentation.

--
Thanks,

Rahul Rameshbabu