diff options
author | Florian Fainelli <f.fainelli@gmail.com> | 2017-02-06 15:55:22 -0800 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2017-02-07 13:48:22 -0500 |
commit | 6136c8fe53a8a28906e090ddd8914f9846eb8df8 (patch) | |
tree | f92c9a882d166f68b2e5b4fd88c0af1d3cbdcad0 /drivers/net/ethernet/ti/netcp_ethss.c | |
parent | 482ff9fdc84dd71099d54edb322a2b32d2f331e4 (diff) | |
download | linux-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.c | 2 |
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); } } } |