diff options
author | Jerry Ray <jerry.ray@microchip.com> | 2022-12-09 16:35:02 +0100 |
---|---|---|
committer | Jakub Kicinski <kuba@kernel.org> | 2022-12-12 21:53:56 +0100 |
commit | 8964916d206071b058c6351f88b1966bd58cbde0 (patch) | |
tree | c6a85173b89f4ec47c9af4136fe4a5b1f34cdf2e | |
parent | net: amd-xgbe: Check only the minimum speed for active/passive cables (diff) | |
download | linux-8964916d206071b058c6351f88b1966bd58cbde0.tar.xz linux-8964916d206071b058c6351f88b1966bd58cbde0.zip |
net: lan9303: Fix read error execution path
This patch fixes an issue where a read failure of a port statistic counter
will return unknown results. While it is highly unlikely the read will
ever fail, it is much cleaner to return a zero for the stat count.
Fixes: a1292595e006 ("net: dsa: add new DSA switch driver for the SMSC-LAN9303")
Signed-off-by: Jerry Ray <jerry.ray@microchip.com>
Reviewed-by: Vladimir Oltean <olteanv@gmail.com>
Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
Link: https://lore.kernel.org/r/20221209153502.7429-1-jerry.ray@microchip.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
-rw-r--r-- | drivers/net/dsa/lan9303-core.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/net/dsa/lan9303-core.c b/drivers/net/dsa/lan9303-core.c index 80f07bd20593..2e270b479143 100644 --- a/drivers/net/dsa/lan9303-core.c +++ b/drivers/net/dsa/lan9303-core.c @@ -1005,9 +1005,11 @@ static void lan9303_get_ethtool_stats(struct dsa_switch *ds, int port, ret = lan9303_read_switch_port( chip, port, lan9303_mib[u].offset, ®); - if (ret) + if (ret) { dev_warn(chip->dev, "Reading status port %d reg %u failed\n", port, lan9303_mib[u].offset); + reg = 0; + } data[u] = reg; } } |