Re: [PATCH net-next v1 1/1] net: dsa: microchip: add stats64 support for ksz8 series of switches

From: Jakub Kicinski
Date: Wed Dec 07 2022 - 18:48:34 EST


On Wed, 7 Dec 2022 07:16:30 +0100 Oleksij Rempel wrote:
> > FWIW for normal netdevs / NICs the rtnl_link_stat pkts do not include
> > pause frames, normally. Otherwise one can't maintain those stats in SW
> > (and per-ring stats, if any, don't add up to the full link stats).
> > But if you have a good reason to do this - I won't nack..
>
> Pause frames are accounted by rx/tx_bytes by HW. Since pause frames may
> have different size, it is not possible to correct byte counters, so I
> need to add them to the packet counters.

I have embarrassed myself with my lack of understanding of pause frames
before but nonetheless - are you sure? I thought they are always 64B.
Quick look at the standard seems to agree:

31C.3.1 Receive state diagram (INITIATE MAC CONTROL FUNCTION) for
EXTENSION operation

shows a 64 octet frame.

Sending long pause frames seems self-defeating as we presumably want
the receiver to react ASAP.