]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
net: fec: Fix possible NPD in fec_enet_phy_reset_after_clk_enable()
authorStefan Wahren <wahrenst@gmx.net>
Thu, 4 Sep 2025 09:13:34 +0000 (11:13 +0200)
committerJakub Kicinski <kuba@kernel.org>
Sat, 6 Sep 2025 00:45:43 +0000 (17:45 -0700)
The function of_phy_find_device may return NULL, so we need to take
care before dereferencing phy_dev.

Fixes: 64a632da538a ("net: fec: Fix phy_device lookup for phy_reset_after_clk_enable()")
Signed-off-by: Stefan Wahren <wahrenst@gmx.net>
Cc: Christoph Niedermaier <cniedermaier@dh-electronics.com>
Cc: Richard Leitner <richard.leitner@skidata.com>
Reviewed-by: Simon Horman <horms@kernel.org>
Reviewed-by: Wei Fang <wei.fang@nxp.com>
Link: https://patch.msgid.link/20250904091334.53965-1-wahrenst@gmx.net
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/freescale/fec_main.c

index 1383918f8a3fc619f1c73522a69ff56ef134abcf..adf1f2bbcbb16f27c486cfbb7ac95a81a36a521c 100644 (file)
@@ -2363,7 +2363,8 @@ static void fec_enet_phy_reset_after_clk_enable(struct net_device *ndev)
                 */
                phy_dev = of_phy_find_device(fep->phy_node);
                phy_reset_after_clk_enable(phy_dev);
-               put_device(&phy_dev->mdio.dev);
+               if (phy_dev)
+                       put_device(&phy_dev->mdio.dev);
        }
 }