Skip to content

Commit e88fbc3

Browse files
hkallweitkuba-moo
authored andcommitted
net: ftgmac100: fix potential NULL pointer access in ftgmac100_phy_disconnect
After the call to phy_disconnect() netdev->phydev is reset to NULL. So fixed_phy_unregister() would be called with a NULL pointer as argument. Therefore cache the phy_device before this call. Fixes: e24a6c8 ("net: ftgmac100: Get link speed and duplex for NC-SI") Cc: [email protected] Signed-off-by: Heiner Kallweit <[email protected]> Reviewed-by: Dawid Osuchowski <[email protected]> Link: https://patch.msgid.link/[email protected] Signed-off-by: Jakub Kicinski <[email protected]>
1 parent 966c529 commit e88fbc3

File tree

1 file changed

+4
-3
lines changed

1 file changed

+4
-3
lines changed

drivers/net/ethernet/faraday/ftgmac100.c

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1750,16 +1750,17 @@ static int ftgmac100_setup_mdio(struct net_device *netdev)
17501750
static void ftgmac100_phy_disconnect(struct net_device *netdev)
17511751
{
17521752
struct ftgmac100 *priv = netdev_priv(netdev);
1753+
struct phy_device *phydev = netdev->phydev;
17531754

1754-
if (!netdev->phydev)
1755+
if (!phydev)
17551756
return;
17561757

1757-
phy_disconnect(netdev->phydev);
1758+
phy_disconnect(phydev);
17581759
if (of_phy_is_fixed_link(priv->dev->of_node))
17591760
of_phy_deregister_fixed_link(priv->dev->of_node);
17601761

17611762
if (priv->use_ncsi)
1762-
fixed_phy_unregister(netdev->phydev);
1763+
fixed_phy_unregister(phydev);
17631764
}
17641765

17651766
static void ftgmac100_destroy_mdio(struct net_device *netdev)

0 commit comments

Comments
 (0)