]> git.dujemihanovic.xyz Git - linux.git/commitdiff
net: phy: unlock on error in phy_probe()
authorDan Carpenter <error27@gmail.com>
Mon, 27 Feb 2023 10:03:22 +0000 (13:03 +0300)
committerPaolo Abeni <pabeni@redhat.com>
Tue, 28 Feb 2023 11:40:12 +0000 (12:40 +0100)
If genphy_c45_read_eee_adv() fails then we need to do a reset and unlock
the &phydev->lock mutex before returning.

Fixes: 3eeca4e199ce ("net: phy: do not force EEE support")
Signed-off-by: Dan Carpenter <error27@gmail.com>
Reviewed-by: Oleksij Rempel <o.rempel@pengutronix.de>
Link: https://lore.kernel.org/r/Y/x/6kHCjnQHqOpF@kili
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
drivers/net/phy/phy_device.c

index 3f8a64fb9d71284092f2877608214817bfdf38a0..9e9fd8ff00f69c48fdc3b243d0836cc5cd694781 100644 (file)
@@ -3146,7 +3146,7 @@ static int phy_probe(struct device *dev)
         */
        err = genphy_c45_read_eee_adv(phydev, phydev->advertising_eee);
        if (err)
-               return err;
+               goto out;
 
        /* There is no "enabled" flag. If PHY is advertising, assume it is
         * kind of enabled.