diff options
| author | Markus Stockhausen <markus.stockhausen@gmx.de> | 2026-06-03 19:59:18 +0200 |
|---|---|---|
| committer | Jakub Kicinski <kuba@kernel.org> | 2026-06-05 18:38:55 -0700 |
| commit | f369dd8ccf2dbce9166544e266e2b6ca974f98d9 (patch) | |
| tree | 81396f83f10b0c63a8c01c8f88b363c017ead90a /include/linux/timerqueue_types.h | |
| parent | 3a58a1b8d5052f5b5072fe2833ef048915192eaf (diff) | |
net: mdio: realtek-rtl9300: Refactor otto_emdio_map_ports()
This function has multiple issues:
- It uses __free low level cleanups
- It mixes "fwnode" and "of" functions
Convert this to a uniform "of" usage and manual reference counting
cleanup. With that also fix two subtle lookup bugs in the original
code.
mdio_dn = phy_dn->parent;
if (mdio_dn->parent != dev->of_node)
continue;
This skips an API access and therefore misses reference counting.
Additionally in the case of a very buggy device tree, phy_dn might
be a root node. Looking up its grandparent leads to a NULL pointer
access.
Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://patch.msgid.link/20260603175924.123019-2-markus.stockhausen@gmx.de
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'include/linux/timerqueue_types.h')
0 files changed, 0 insertions, 0 deletions
