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
811a919135
("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>
This commit is contained in:
parent
482ff9fdc8
commit
6136c8fe53
|
@ -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",
|
dev_dbg(priv->dev, "phy found: id is: 0x%s\n",
|
||||||
phydev_name(slave->phy));
|
phydev_name(slave->phy));
|
||||||
phy_start(slave->phy);
|
phy_start(slave->phy);
|
||||||
phy_read_status(slave->phy);
|
|
||||||
}
|
}
|
||||||
return 0;
|
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",
|
dev_dbg(dev, "phy found: id is: 0x%s\n",
|
||||||
phydev_name(slave->phy));
|
phydev_name(slave->phy));
|
||||||
phy_start(slave->phy);
|
phy_start(slave->phy);
|
||||||
phy_read_status(slave->phy);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue