diff mbox series

[net] net: dsa: mv88e6xxx: Fix u64 statistics

Message ID 20190228171403.17780-1-andrew@lunn.ch
State Accepted
Delegated to: David Miller
Headers show
Series [net] net: dsa: mv88e6xxx: Fix u64 statistics | expand

Commit Message

Andrew Lunn Feb. 28, 2019, 5:14 p.m. UTC
The switch maintains u64 counters for the number of octets sent and
received. These are kept as two u32's which need to be combined.  Fix
the combing, which wrongly worked on u16's.

Fixes: 80c4627b2719 ("dsa: mv88x6xxx: Refactor getting a single statistic")
Reported-by: Chris Healy <Chris.Healy@zii.aero>
Signed-off-by: Andrew Lunn <andrew@lunn.ch>
---
 drivers/net/dsa/mv88e6xxx/chip.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

David Miller Feb. 28, 2019, 8:53 p.m. UTC | #1
From: Andrew Lunn <andrew@lunn.ch>
Date: Thu, 28 Feb 2019 18:14:03 +0100

> The switch maintains u64 counters for the number of octets sent and
> received. These are kept as two u32's which need to be combined.  Fix
> the combing, which wrongly worked on u16's.
> 
> Fixes: 80c4627b2719 ("dsa: mv88x6xxx: Refactor getting a single statistic")
> Reported-by: Chris Healy <Chris.Healy@zii.aero>
> Signed-off-by: Andrew Lunn <andrew@lunn.ch>

Applied and queued up for -stable, thanks Andrew.
diff mbox series

Patch

diff --git a/drivers/net/dsa/mv88e6xxx/chip.c b/drivers/net/dsa/mv88e6xxx/chip.c
index 12fd7ce3f1ff..9d36d2b5fbc6 100644
--- a/drivers/net/dsa/mv88e6xxx/chip.c
+++ b/drivers/net/dsa/mv88e6xxx/chip.c
@@ -896,7 +896,7 @@  static uint64_t _mv88e6xxx_get_ethtool_stat(struct mv88e6xxx_chip *chip,
 	default:
 		return U64_MAX;
 	}
-	value = (((u64)high) << 16) | low;
+	value = (((u64)high) << 32) | low;
 	return value;
 }