Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 668de67d authored by Heiner Kallweit's avatar Heiner Kallweit Committed by Greg Kroah-Hartman
Browse files

net: phy: smsc: bail out in lan87xx_read_status if genphy_read_status fails



[ Upstream commit c22c3bbf351e4ce905f082649cffa1ff893ea8c1 ]

If genphy_read_status fails then further access to the PHY may result
in unpredictable behavior. To prevent this bail out immediately if
genphy_read_status fails.

Fixes: 4223dbff ("net: phy: smsc: Re-enable EDPD mode for LAN87xx")
Signed-off-by: default avatarHeiner Kallweit <hkallweit1@gmail.com>
Reviewed-by: default avatarSimon Horman <simon.horman@corigine.com>
Link: https://lore.kernel.org/r/026aa4f2-36f5-1c10-ab9f-cdb17dda6ac4@gmail.com


Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
Signed-off-by: default avatarSasha Levin <sashal@kernel.org>
parent 5aaab217
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -108,8 +108,11 @@ static int lan911x_config_init(struct phy_device *phydev)
static int lan87xx_read_status(struct phy_device *phydev)
{
	struct smsc_phy_priv *priv = phydev->priv;
	int err;

	int err = genphy_read_status(phydev);
	err = genphy_read_status(phydev);
	if (err)
		return err;

	if (!phydev->link && priv->energy_enable) {
		int i;