summaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/ti/netcp_ethss.c
diff options
context:
space:
mode:
authorFlorian Fainelli <f.fainelli@gmail.com>2017-02-06 15:55:22 -0800
committerDavid S. Miller <davem@davemloft.net>2017-02-07 13:48:22 -0500
commit6136c8fe53a8a28906e090ddd8914f9846eb8df8 (patch)
treef92c9a882d166f68b2e5b4fd88c0af1d3cbdcad0 /drivers/net/ethernet/ti/netcp_ethss.c
parent482ff9fdc84dd71099d54edb322a2b32d2f331e4 (diff)
downloadlinux-6136c8fe53a8a28906e090ddd8914f9846eb8df8.tar.gz
linux-6136c8fe53a8a28906e090ddd8914f9846eb8df8.tar.bz2
linux-6136c8fe53a8a28906e090ddd8914f9846eb8df8.zip
net: netcp: Do not clobber PHY link outside of state machine
Calling phy_read_status() means that we may call into genphy_read_status() which in turn will use genphy_update_link() which can make changes to phydev->link outside of the state machine's state transitions. This is an invalid behavior that is now caught as off 811a919135b9 ("phy state machine: failsafe leave invalid RUNNING state") Signed-off-by: Florian Fainelli <f.fainelli@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/ti/netcp_ethss.c')
-rw-r--r--drivers/net/ethernet/ti/netcp_ethss.c2
1 files changed, 0 insertions, 2 deletions
diff --git a/drivers/net/ethernet/ti/netcp_ethss.c b/drivers/net/ethernet/ti/netcp_ethss.c
index f7bb241b17ab..eece3e2eec14 100644
--- a/drivers/net/ethernet/ti/netcp_ethss.c
+++ b/drivers/net/ethernet/ti/netcp_ethss.c
@@ -2313,7 +2313,6 @@ static int gbe_slave_open(struct gbe_intf *gbe_intf)
dev_dbg(priv->dev, "phy found: id is: 0x%s\n",
phydev_name(slave->phy));
phy_start(slave->phy);
- phy_read_status(slave->phy);
}
return 0;
}
@@ -3119,7 +3118,6 @@ static void init_secondary_ports(struct gbe_priv *gbe_dev,
dev_dbg(dev, "phy found: id is: 0x%s\n",
phydev_name(slave->phy));
phy_start(slave->phy);
- phy_read_status(slave->phy);
}
}
}