Commit dedf6c90 authored by Joey Lu's avatar Joey Lu Committed by Jakub Kicinski
Browse files

net: stmmac: dwmac-nuvoton: fix NULL pointer dereference in nvt_set_phy_intf_sel()



priv->dev was never initialized after devm_kzalloc() allocates the
private data structure. When nvt_set_phy_intf_sel() is later invoked
via the phylink interface_select callback, it calls
nvt_gmac_get_delay(priv->dev, ...) which dereferences the NULL pointer.

Fix this by assigning priv->dev = dev immediately after allocation.

Fixes: 4d7c557f ("net: stmmac: dwmac-nuvoton: Add dwmac glue for Nuvoton MA35 family")
Signed-off-by: default avatarJoey Lu <a0987203069@gmail.com>
Link: https://patch.msgid.link/20260506084614.192894-2-a0987203069@gmail.com


Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
parent ecddc523
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -100,6 +100,8 @@ static int nvt_gmac_probe(struct platform_device *pdev)
	if (!priv)
		return dev_err_probe(dev, -ENOMEM, "Failed to allocate private data\n");

	priv->dev = dev;

	priv->regmap = syscon_regmap_lookup_by_phandle_args(dev->of_node, "nuvoton,sys",
							    1, &priv->macid);
	if (IS_ERR(priv->regmap))