Message ID | 20240820175343.760389-2-sean.anderson@linux.dev (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | net: xilinx: axienet: Add statistics support | expand |
> -----Original Message----- > From: Sean Anderson <sean.anderson@linux.dev> > Sent: Tuesday, August 20, 2024 11:24 PM > To: Andrew Lunn <andrew@lunn.ch>; Pandey, Radhey Shyam > <radhey.shyam.pandey@amd.com>; netdev@vger.kernel.org > Cc: Simek, Michal <michal.simek@amd.com>; linux-kernel@vger.kernel.org; > Russell King <linux@armlinux.org.uk>; David S . Miller > <davem@davemloft.net>; Jakub Kicinski <kuba@kernel.org>; Paolo Abeni > <pabeni@redhat.com>; Eric Dumazet <edumazet@google.com>; Simon > Horman <horms@kernel.org>; linux-arm-kernel@lists.infradead.org; Sean > Anderson <sean.anderson@linux.dev> > Subject: [PATCH net-next v4 1/2] net: xilinx: axienet: Report RxRject as > rx_dropped > > The Receive Frame Rejected interrupt is asserted whenever there was a > receive error (bad FCS, bad length, etc.) or whenever the frame was > dropped due to a mismatched address. So this is really a combination of > rx_otherhost_dropped, rx_length_errors, rx_frame_errors, and > rx_crc_errors. Mismatched addresses are common and aren't really errors > at all (much like how fragments are normal on half-duplex links). To > avoid confusion, report these events as rx_dropped. This better > reflects what's going on: the packet was received by the MAC but dropped > before being processed. > > Signed-off-by: Sean Anderson <sean.anderson@linux.dev> > Reviewed-by: Andrew Lunn <andrew@lunn.ch> Reviewed-by: Radhey Shyam Pandey <radhey.shyam.pandey@amd.com> > --- > > (no changes since v1) > > drivers/net/ethernet/xilinx/xilinx_axienet_main.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/net/ethernet/xilinx/xilinx_axienet_main.c > b/drivers/net/ethernet/xilinx/xilinx_axienet_main.c > index ca04c298daa2..b2d7c396e2e3 100644 > --- a/drivers/net/ethernet/xilinx/xilinx_axienet_main.c > +++ b/drivers/net/ethernet/xilinx/xilinx_axienet_main.c > @@ -1296,7 +1296,7 @@ static irqreturn_t axienet_eth_irq(int irq, void > *_ndev) > ndev->stats.rx_missed_errors++; > > if (pending & XAE_INT_RXRJECT_MASK) > - ndev->stats.rx_frame_errors++; > + ndev->stats.rx_dropped++; > > axienet_iow(lp, XAE_IS_OFFSET, pending); > return IRQ_HANDLED; > -- > 2.35.1.1320.gc452695387.dirty
diff --git a/drivers/net/ethernet/xilinx/xilinx_axienet_main.c b/drivers/net/ethernet/xilinx/xilinx_axienet_main.c index ca04c298daa2..b2d7c396e2e3 100644 --- a/drivers/net/ethernet/xilinx/xilinx_axienet_main.c +++ b/drivers/net/ethernet/xilinx/xilinx_axienet_main.c @@ -1296,7 +1296,7 @@ static irqreturn_t axienet_eth_irq(int irq, void *_ndev) ndev->stats.rx_missed_errors++; if (pending & XAE_INT_RXRJECT_MASK) - ndev->stats.rx_frame_errors++; + ndev->stats.rx_dropped++; axienet_iow(lp, XAE_IS_OFFSET, pending); return IRQ_HANDLED;