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

From: Rahul Rameshbabu <[email-masked]>
Date: Wed, 13 Mar 2024 21:19:26 -0700

On Wed, 13 Mar, 2024 18:40:17 -0700 Jakub Kicinski <[email-masked]> 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