]> 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)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 2 Oct 2025 11:35:38 +0000 (13:35 +0200)
[ Upstream commit 03e79de4608bdd48ad6eec272e196124cefaf798 ]

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>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/ethernet/freescale/fec_main.c

index adf70a1650f4d775c3c8e53be4e939bb68da2274..9905e65621004ee3438a68e92c6b11567a596141 100644 (file)
@@ -1986,7 +1986,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);
        }
 }