net: dsa: warn if phylink_mac_link_state returns error
authorRussell King <rmk+kernel@armlinux.org.uk>
Sat, 14 Mar 2020 10:15:28 +0000 (10:15 +0000)
committerDavid S. Miller <davem@davemloft.net>
Mon, 16 Mar 2020 00:11:12 +0000 (17:11 -0700)
Issue a warning to the kernel log if phylink_mac_link_state() returns
an error. This should not occur, but let's make it visible.

Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/dsa/port.c

index e6875d8..a18e65a 100644 (file)
@@ -457,6 +457,7 @@ static void dsa_port_phylink_mac_pcs_get_state(struct phylink_config *config,
 {
        struct dsa_port *dp = container_of(config, struct dsa_port, pl_config);
        struct dsa_switch *ds = dp->ds;
+       int err;
 
        /* Only called for inband modes */
        if (!ds->ops->phylink_mac_link_state) {
@@ -464,8 +465,12 @@ static void dsa_port_phylink_mac_pcs_get_state(struct phylink_config *config,
                return;
        }
 
-       if (ds->ops->phylink_mac_link_state(ds, dp->index, state) < 0)
+       err = ds->ops->phylink_mac_link_state(ds, dp->index, state);
+       if (err < 0) {
+               dev_err(ds->dev, "p%d: phylink_mac_link_state() failed: %d\n",
+                       dp->index, err);
                state->link = 0;
+       }
 }
 
 static void dsa_port_phylink_mac_config(struct phylink_config *config,