Patchwork macb: Add rx overrun counter

login
register
mail settings
Submitter Alexander Stein
Date April 13, 2011, 3:03 p.m.
Message ID <1302707004-15818-1-git-send-email-alexander.stein@systec-electronic.com>
Download mbox | patch
Permalink /patch/91022/
State Accepted
Delegated to: David Miller
Headers show

Comments

Alexander Stein - April 13, 2011, 3:03 p.m.
Signed-off-by: Alexander Stein <alexander.stein@systec-electronic.com>
---
 drivers/net/macb.c |    8 +++++++-
 1 files changed, 7 insertions(+), 1 deletions(-)
David Miller - April 13, 2011, 6:50 p.m.
From: Alexander Stein <alexander.stein@systec-electronic.com>
Date: Wed, 13 Apr 2011 17:03:24 +0200

> Signed-off-by: Alexander Stein <alexander.stein@systec-electronic.com>

Applied.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Patch

diff --git a/drivers/net/macb.c b/drivers/net/macb.c
index 79ccb54..76ce819 100644
--- a/drivers/net/macb.c
+++ b/drivers/net/macb.c
@@ -576,6 +576,11 @@  static irqreturn_t macb_interrupt(int irq, void *dev_id)
 		 * add that if/when we get our hands on a full-blown MII PHY.
 		 */
 
+		if (status & MACB_BIT(ISR_ROVR)) {
+			/* We missed at least one packet */
+			bp->hw_stats.rx_overruns++;
+		}
+
 		if (status & MACB_BIT(HRESP)) {
 			/*
 			 * TODO: Reset the hardware, and maybe move the printk
@@ -1024,7 +1029,8 @@  static struct net_device_stats *macb_get_stats(struct net_device *dev)
 				   hwstat->rx_jabbers +
 				   hwstat->rx_undersize_pkts +
 				   hwstat->rx_length_mismatch);
-	nstat->rx_over_errors = hwstat->rx_resource_errors;
+	nstat->rx_over_errors = hwstat->rx_resource_errors +
+				   hwstat->rx_overruns;
 	nstat->rx_crc_errors = hwstat->rx_fcs_errors;
 	nstat->rx_frame_errors = hwstat->rx_align_errors;
 	nstat->rx_fifo_errors = hwstat->rx_overruns;