From: Vladimir Oltean Date: Wed, 8 May 2019 20:32:25 +0000 (+0300) Subject: net: dsa: sja1105: Don't return a negative in u8 sja1105_stp_state_get X-Git-Tag: v5.4-rc1~1025^2~20 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=3b2c4f4d63a554739a32dc709b617f2d2acc2ad0;p=platform%2Fkernel%2Flinux-rpi.git net: dsa: sja1105: Don't return a negative in u8 sja1105_stp_state_get Dan Carpenter says: The patch 640f763f98c2: "net: dsa: sja1105: Add support for Spanning Tree Protocol" from May 5, 2019, leads to the following static checker warning: drivers/net/dsa/sja1105/sja1105_main.c:1073 sja1105_stp_state_get() warn: signedness bug returning '(-22)' The caller doesn't check for negative errors anyway. Fixes: 640f763f98c2: ("net: dsa: sja1105: Add support for Spanning Tree Protocol") Reported-by: Dan Carpenter Signed-off-by: Vladimir Oltean Signed-off-by: David S. Miller --- diff --git a/drivers/net/dsa/sja1105/sja1105_main.c b/drivers/net/dsa/sja1105/sja1105_main.c index 50ff625..0663b78 100644 --- a/drivers/net/dsa/sja1105/sja1105_main.c +++ b/drivers/net/dsa/sja1105/sja1105_main.c @@ -1070,7 +1070,11 @@ static u8 sja1105_stp_state_get(struct sja1105_private *priv, int port) return BR_STATE_LEARNING; if (mac[port].ingress && mac[port].egress && mac[port].dyn_learn) return BR_STATE_FORWARDING; - return -EINVAL; + /* This is really an error condition if the MAC was in none of the STP + * states above. But treating the port as disabled does nothing, which + * is adequate, and it also resets the MAC to a known state later on. + */ + return BR_STATE_DISABLED; } /* For situations where we need to change a setting at runtime that is only