[Linux-stm32] [PATCH net-next v2] net: stmmac: dwmac4: Add ip payload error statistics

Serge Semin fancer.lancer at gmail.com
Wed Oct 2 18:35:30 UTC 2024


Hi Jakub

On Wed, Oct 02, 2024 at 06:58:01AM GMT, Jakub Kicinski wrote:
> On Mon, 30 Sep 2024 19:02:05 +0800 Minda Chen wrote:
> > Add dwmac4 ip payload error statistics, and rename discripter bit macro
> 
> descriptor
>         ^
> 
> > because latest version descriptor IPCE bit claims ip checksum error or
> > l4 segment length error.
> 

> What is an L4 segment length error on Rx?
> Seems to me that reusing ip_payload_err here will be confusing

>From the current "ip_payload_err" field semantics, Minda is correct to
use it for the Rx IP-payload error statistics. Here is the definition
of the IPCE flag (part of the RDES4 descriptor field) cited from the
Synopsys DW QoS Eth v5 HW-manual:

Bit  Name  Description
 7   IPCE  IP Payload Error
           When this bit is set, it indicates either of the following:
           ■ The 16-bit IP payload checksum (that is, the TCP, UDP, or ICMP checksum) calculated by the
             MAC does not match the corresponding checksum field in the received segment.
           ■ The TCP, UDP, or ICMP segment length does not match the payload length value in the IP Header
             field.
           ■ The TCP, UDP, or ICMP segment length is less than minimum allowed segment length for TCP,
             UDP, or ICMP.

It almost word-by-word matches to what is defined for the
ERDES4_IP_PAYLOAD_ERR flag (part of the Extended RDES4 descriptor
field) in DW GMAC v3.x HW-manual for which the
stmmac_stats::ip_payload_err field has been added in the first place.
Note the name of the flag in the descriptor matches to what is declared in
the stmmac_stats structure.

So based on that I don't see any problem with the patch except some
minor patch-log issues I mentioned in another message.

-Serge(y)

> -- 
> pw-bot: cr
> 



More information about the Linux-stm32 mailing list