diff options
author | Russell King <rmk+kernel@armlinux.org.uk> | 2020-03-14 13:15:28 +0300 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2020-03-16 03:11:12 +0300 |
commit | 87615c96e77ff45d3b0e587f9cfb223009af0b86 (patch) | |
tree | 01f74da006fc4f485562f511a698496a78e3d141 /net/dsa | |
parent | 3c04d3570b942059b16e037404dee9f409e24fa8 (diff) | |
download | linux-87615c96e77ff45d3b0e587f9cfb223009af0b86.tar.xz |
net: dsa: warn if phylink_mac_link_state returns error
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>
Diffstat (limited to 'net/dsa')
-rw-r--r-- | net/dsa/port.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/net/dsa/port.c b/net/dsa/port.c index e6875d8f944d..a18e65a474a5 100644 --- a/net/dsa/port.c +++ b/net/dsa/port.c @@ -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, |