RE: [Intel-wired-lan] [PATCH v1 iwl-next 1/2] igbvf: add lbtx_packets and lbtx_bytes to ethtool statistics

From: Romanowski, Rafal
Date: Thu Aug 28 2025 - 06:22:08 EST


> -----Original Message-----
> From: Intel-wired-lan <intel-wired-lan-bounces@xxxxxxxxxx> On Behalf Of Simon
> Horman
> Sent: Tuesday, August 26, 2025 5:52 PM
> To: Paul Menzel <pmenzel@xxxxxxxxxxxxx>
> Cc: Kohei Enju <enjuk@xxxxxxxxxx>; intel-wired-lan@xxxxxxxxxxxxxxxx;
> netdev@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; Nguyen, Anthony L
> <anthony.l.nguyen@xxxxxxxxx>; Kitszel, Przemyslaw
> <przemyslaw.kitszel@xxxxxxxxx>; Andrew Lunn <andrew+netdev@xxxxxxx>;
> David S. Miller <davem@xxxxxxxxxxxxx>; Eric Dumazet
> <edumazet@xxxxxxxxxx>; Jakub Kicinski <kuba@xxxxxxxxxx>; Paolo Abeni
> <pabeni@xxxxxxxxxx>; kohei.enju@xxxxxxxxx
> Subject: Re: [Intel-wired-lan] [PATCH v1 iwl-next 1/2] igbvf: add lbtx_packets and
> lbtx_bytes to ethtool statistics
>
> On Wed, Aug 13, 2025 at 10:18:29AM +0200, Paul Menzel wrote:
> > Dear Kohei,
> >
> >
> > Thank you for your patch.
> >
> > Am 13.08.25 um 09:50 schrieb Kohei Enju:
> > > 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
> > >
> > > Tested-by: Kohei Enju <enjuk@xxxxxxxxxx>
> >
> > No need to resend, but I believe, you only add a Tested-by: tag, if
> > the person differs from the author/Signed-off-by: tag.
>
> +1
>
> >
> > > Signed-off-by: Kohei Enju <enjuk@xxxxxxxxxx>
> > > ---
> > > 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)
> > > },
> >
> > Reviewed-by: Paul Menzel <pmenzel@xxxxxxxxxxxxx>
>
> Also +1
>
> Reviewed-by: Simon Horman <horms@xxxxxxxxxx>


Tested-by: Rafal Romanowski <rafal.romanowski@xxxxxxxxx>