]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
net: macb: Fix offset error in gem_update_stats
authorSean Anderson <sean.anderson@linux.dev>
Mon, 25 Aug 2025 17:21:34 +0000 (13:21 -0400)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 4 Sep 2025 14:55:39 +0000 (16:55 +0200)
[ Upstream commit 16c8a3a67ec799fc731919e3e51be9af6cdf541d ]

hw_stats now has only one variable for tx_octets/rx_octets, so we should
only increment p once, not twice. This would cause the statistics to be
reported under the wrong categories in `ethtool -S --all-groups` (which
uses hw_stats) but not `ethtool -S` (which uses ethtool_stats).

Signed-off-by: Sean Anderson <sean.anderson@linux.dev>
Fixes: f6af690a295a ("net: cadence: macb: Report standard stats")
Link: https://patch.msgid.link/20250825172134.681861-1-sean.anderson@linux.dev
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/ethernet/cadence/macb_main.c

index c1e904e4a01f460252ce2eafe028ed79f5b15f46..3cb50e5385d49beb65ff666bcc42ab959b74714a 100644 (file)
@@ -3090,7 +3090,7 @@ static void gem_update_stats(struct macb *bp)
                        /* Add GEM_OCTTXH, GEM_OCTRXH */
                        val = bp->macb_reg_readl(bp, offset + 4);
                        bp->ethtool_stats[i] += ((u64)val) << 32;
-                       *(p++) += ((u64)val) << 32;
+                       *p += ((u64)val) << 32;
                }
        }