linux/drivers/net/ethernet/sunplus
Shitalkumar Gandhi a9e29dcd8a net: ethernet: sunplus: spl2sw: fix phy_node refcount leak in remove
mac->phy_node is acquired via of_parse_phandle() in spl2sw_probe() and
stored in the mac private data, transferring ownership of the
device_node reference to mac. On driver removal, spl2sw_phy_remove()
disconnects the PHY but never drops that reference, so each
probe-then-remove cycle leaks one of_node refcount per port permanently.

Drop the reference after phy_disconnect(). While at it, remove the
redundant inner "if (ndev)" check; comm->ndev[i] was just verified
non-NULL on the line above.

Compile-tested only; no SP7021 hardware available.

Fixes: fd3040b939 ("net: ethernet: Add driver for Sunplus SP7021")
Signed-off-by: Shitalkumar Gandhi <shitalkumar.gandhi@cambiumnetworks.com>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Link: https://patch.msgid.link/f3bdd4c91f3e2269b4e256075f9dc70808b1b8e9.1782195965.git.shitalkumar.gandhi@cambiumnetworks.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2026-06-24 19:34:56 -07:00
..
Kconfig
Makefile
spl2sw_define.h
spl2sw_desc.c treewide: Replace kmalloc with kmalloc_obj for non-scalar types 2026-02-21 01:02:28 -08:00
spl2sw_desc.h
spl2sw_driver.c net: ethernet: sunplus: Switch to ndo_eth_ioctl 2025-01-14 18:09:04 -08:00
spl2sw_int.c
spl2sw_int.h
spl2sw_mac.c
spl2sw_mac.h
spl2sw_mdio.c net: Remove C45 check in C22 only MDIO bus drivers 2023-01-20 18:12:45 -08:00
spl2sw_mdio.h
spl2sw_phy.c net: ethernet: sunplus: spl2sw: fix phy_node refcount leak in remove 2026-06-24 19:34:56 -07:00
spl2sw_phy.h
spl2sw_register.h