> -----Original Message-----
> From: Intel-wired-lan <[email protected]> On Behalf
> Of Kohei Enju
> Sent: Monday, August 18, 2025 5:18 PM
> To: [email protected]; [email protected]; linux-
> [email protected]
> Cc: Nguyen, Anthony L <[email protected]>; Kitszel,
> Przemyslaw <[email protected]>; Andrew Lunn
> <[email protected]>; David S. Miller <[email protected]>; Eric
> Dumazet <[email protected]>; Jakub Kicinski <[email protected]>; Paolo
> Abeni <[email protected]>; [email protected]; Kohei Enju
> <[email protected]>; Paul Menzel <[email protected]>
> Subject: [Intel-wired-lan] [PATCH v2 iwl-next 1/2] igbvf: add
> lbtx_packets and lbtx_bytes to ethtool statistics
> 
> Currently ethtool shows lbrx_packets and lbrx_bytes (Good RX
> Packets/Octets loopback Count), but doesn't show the TX-side
> equivalents (lbtx_packets and lbtx_bytes). Add visibility of those
> missing statistics by adding them to ethtool statistics.
> 
> In addition, the order of lbrx_bytes and lbrx_packets is not
> consistent with non-loopback statistics (rx_packets, rx_bytes).
> Therefore, align the order by swapping positions of lbrx_bytes and
> lbrx_packets.
> 
> Tested on Intel Corporation I350 Gigabit Network Connection.
> 
> Before:
>   # ethtool -S ens5 | grep -E "x_(bytes|packets)"
>        rx_packets: 135
>        tx_packets: 106
>        rx_bytes: 16010
>        tx_bytes: 12451
>        lbrx_bytes: 1148
>        lbrx_packets: 12
> 
> After:
>   # ethtool -S ens5 | grep -E "x_(bytes|packets)"
>        rx_packets: 748
>        tx_packets: 304
>        rx_bytes: 81513
>        tx_bytes: 33698
>        lbrx_packets: 97
>        lbtx_packets: 109
>        lbrx_bytes: 12090
>        lbtx_bytes: 12401
> 
> Reviewed-by: Paul Menzel <[email protected]>
> Signed-off-by: Kohei Enju <[email protected]>
Reviewed-by: Aleksandr Loktionov <[email protected]>

> ---
>  drivers/net/ethernet/intel/igbvf/ethtool.c | 4 +++-
>  1 file changed, 3 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/net/ethernet/intel/igbvf/ethtool.c
> b/drivers/net/ethernet/intel/igbvf/ethtool.c
> index 773895c663fd..c6defc495f13 100644
> --- a/drivers/net/ethernet/intel/igbvf/ethtool.c
> +++ b/drivers/net/ethernet/intel/igbvf/ethtool.c
> @@ -30,8 +30,10 @@ static const struct igbvf_stats
> igbvf_gstrings_stats[] = {
>       { "rx_bytes", IGBVF_STAT(stats.gorc, stats.base_gorc) },
>       { "tx_bytes", IGBVF_STAT(stats.gotc, stats.base_gotc) },
>       { "multicast", IGBVF_STAT(stats.mprc, stats.base_mprc) },
> -     { "lbrx_bytes", IGBVF_STAT(stats.gorlbc, stats.base_gorlbc) },
>       { "lbrx_packets", IGBVF_STAT(stats.gprlbc, stats.base_gprlbc)
> },
> +     { "lbtx_packets", IGBVF_STAT(stats.gptlbc, stats.base_gptlbc)
> },
> +     { "lbrx_bytes", IGBVF_STAT(stats.gorlbc, stats.base_gorlbc) },
> +     { "lbtx_bytes", IGBVF_STAT(stats.gotlbc, stats.base_gotlbc) },
>       { "tx_restart_queue", IGBVF_STAT(restart_queue, zero_base) },
>       { "tx_timeout_count", IGBVF_STAT(tx_timeout_count, zero_base)
> },
>       { "rx_long_byte_count", IGBVF_STAT(stats.gorc, stats.base_gorc)
> },
> --
> 2.48.1

Reply via email to