[net] net: dsa: tag_qca: fix doubled Tx statistics
diff mbox series

Message ID 20200115085652.12586-1-alobakin@dlink.ru
State Accepted
Delegated to: David Miller
Headers show
Series
  • [net] net: dsa: tag_qca: fix doubled Tx statistics
Related show

Commit Message

Alexander Lobakin Jan. 15, 2020, 8:56 a.m. UTC
DSA subsystem takes care of netdev statistics since commit 4ed70ce9f01c
("net: dsa: Refactor transmit path to eliminate duplication"), so
any accounting inside tagger callbacks is redundant and can lead to
messing up the stats.
This bug is present in Qualcomm tagger since day 0.

Fixes: cafdc45c949b ("net-next: dsa: add Qualcomm tag RX/TX handler")
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Signed-off-by: Alexander Lobakin <alobakin@dlink.ru>
---
 net/dsa/tag_qca.c | 3 ---
 1 file changed, 3 deletions(-)

Comments

Florian Fainelli Jan. 15, 2020, 5:23 p.m. UTC | #1
On 1/15/20 12:56 AM, Alexander Lobakin wrote:
> DSA subsystem takes care of netdev statistics since commit 4ed70ce9f01c
> ("net: dsa: Refactor transmit path to eliminate duplication"), so
> any accounting inside tagger callbacks is redundant and can lead to
> messing up the stats.
> This bug is present in Qualcomm tagger since day 0.
> 
> Fixes: cafdc45c949b ("net-next: dsa: add Qualcomm tag RX/TX handler")
> Reviewed-by: Andrew Lunn <andrew@lunn.ch>
> Signed-off-by: Alexander Lobakin <alobakin@dlink.ru>

Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
David Miller Jan. 16, 2020, 1 p.m. UTC | #2
From: Alexander Lobakin <alobakin@dlink.ru>
Date: Wed, 15 Jan 2020 11:56:52 +0300

> DSA subsystem takes care of netdev statistics since commit 4ed70ce9f01c
> ("net: dsa: Refactor transmit path to eliminate duplication"), so
> any accounting inside tagger callbacks is redundant and can lead to
> messing up the stats.
> This bug is present in Qualcomm tagger since day 0.
> 
> Fixes: cafdc45c949b ("net-next: dsa: add Qualcomm tag RX/TX handler")
> Reviewed-by: Andrew Lunn <andrew@lunn.ch>
> Signed-off-by: Alexander Lobakin <alobakin@dlink.ru>

Applied and queued up for -stable.

Patch
diff mbox series

diff --git a/net/dsa/tag_qca.c b/net/dsa/tag_qca.c
index c95885215525..c8a128c9e5e0 100644
--- a/net/dsa/tag_qca.c
+++ b/net/dsa/tag_qca.c
@@ -33,9 +33,6 @@  static struct sk_buff *qca_tag_xmit(struct sk_buff *skb, struct net_device *dev)
 	struct dsa_port *dp = dsa_slave_to_port(dev);
 	u16 *phdr, hdr;
 
-	dev->stats.tx_packets++;
-	dev->stats.tx_bytes += skb->len;
-
 	if (skb_cow_head(skb, 0) < 0)
 		return NULL;