summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorQuan Sun <2022090917019@std.uestc.edu.cn>2026-05-07 16:17:38 +0300
committerJakub Kicinski <kuba@kernel.org>2026-05-09 01:30:10 +0300
commit4908f1395fb1b832ceec11584af649874a2732ea (patch)
tree516185f24f306c5df6bb07ba89aef9614ba5d253 /include
parent0a549298f452a83ae57e6582e6ca389357f9355d (diff)
downloadlinux-4908f1395fb1b832ceec11584af649874a2732ea.tar.xz
net: ethtool: fix NULL pointer dereference in phy_reply_size
In phy_prepare_data(), several strings such as 'name', 'drvname', 'upstream_sfp_name', and 'downstream_sfp_name' are allocated using kstrdup(). However, these allocations were not checked for failure. If kstrdup() fails for 'name', it returns NULL while the function continues. This leads to a kernel NULL pointer dereference and panic later in phy_reply_size() when it unconditionally calls strlen() on the NULL pointer. While other strings like 'upstream_sfp_name' might be checked before access in certain code paths, failing to handle these allocations consistently can lead to incomplete data reporting or hidden bugs. Fix this by adding proper NULL checks for all kstrdup() calls in phy_prepare_data() and implement a centralized error handling path using goto labels to ensure all previously allocated resources are freed on failure. Fixes: 9dd2ad5e92b9 ("net: ethtool: phy: Convert the PHY_GET command to generic phy dump") Signed-off-by: Quan Sun <2022090917019@std.uestc.edu.cn> Reviewed-by: Maxime Chevallier <maxime.chevallier@bootlin.com> Link: https://patch.msgid.link/20260507131738.1173835-1-2022090917019@std.uestc.edu.cn Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'include')
0 files changed, 0 insertions, 0 deletions