]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
net: stmmac: fix ethtool per-queue statistics
authorPetr Tesarik <petr@tesarici.cz>
Fri, 5 Jan 2024 20:16:42 +0000 (21:16 +0100)
committerDavid S. Miller <davem@davemloft.net>
Sun, 7 Jan 2024 15:30:20 +0000 (15:30 +0000)
commit61921bdaa132b580b6db6858e6d7dcdb870df5fe
tree0e1b0b3e14e844585af6d1d4675399bcfcad59f1
parentd375b98e0248980681e5e56b712026174d617198
net: stmmac: fix ethtool per-queue statistics

Fix per-queue statistics for devices with more than one queue.

The output data pointer is currently reset in each loop iteration,
effectively summing all queue statistics in the first four u64 values.

The summary values are not even labeled correctly. For example, if eth0 has
2 queues, ethtool -S eth0 shows:

     q0_tx_pkt_n: 374 (actually tx_pkt_n over all queues)
     q0_tx_irq_n: 23  (actually tx_normal_irq_n over all queues)
     q1_tx_pkt_n: 462 (actually rx_pkt_n over all queues)
     q1_tx_irq_n: 446 (actually rx_normal_irq_n over all queues)
     q0_rx_pkt_n: 0
     q0_rx_irq_n: 0
     q1_rx_pkt_n: 0
     q1_rx_irq_n: 0

Fixes: 133466c3bbe1 ("net: stmmac: use per-queue 64 bit statistics where necessary")
Cc: stable@vger.kernel.org
Signed-off-by: Petr Tesarik <petr@tesarici.cz>
Reviewed-by: Jisheng Zhang <jszhang@kernel.org>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/stmicro/stmmac/stmmac_ethtool.c