diff options
author | 2024-12-24 12:18:09 +0900 | |
---|---|---|
committer | 2025-01-07 20:05:32 +0100 | |
commit | 9164e0912af206a72ddac4915f7784e470a04ace (patch) | |
tree | 232d996a56f5a6c17cababadec7532071f7e4a2c | |
parent | Linux 6.13-rc6 (diff) | |
download | wireguard-linux-9164e0912af206a72ddac4915f7784e470a04ace.tar.xz wireguard-linux-9164e0912af206a72ddac4915f7784e470a04ace.zip |
thermal: of: fix OF node leak in of_thermal_zone_find()
of_thermal_zone_find() calls of_parse_phandle_with_args(), but does not
release the OF node reference obtained by it.
Add a of_node_put() call when the call is successful.
Fixes: 3fd6d6e2b4e8 ("thermal/of: Rework the thermal device tree initialization")
Signed-off-by: Joe Hattori <joe@pf.is.s.u-tokyo.ac.jp>
Link: https://patch.msgid.link/20241224031809.950461-1-joe@pf.is.s.u-tokyo.ac.jp
[ rjw: Changelog edit ]
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
-rw-r--r-- | drivers/thermal/thermal_of.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/thermal/thermal_of.c b/drivers/thermal/thermal_of.c index fab11b98ca49..5ab4ce4daaeb 100644 --- a/drivers/thermal/thermal_of.c +++ b/drivers/thermal/thermal_of.c @@ -160,6 +160,7 @@ static struct device_node *of_thermal_zone_find(struct device_node *sensor, int return ERR_PTR(ret); } + of_node_put(sensor_specs.np); if ((sensor == sensor_specs.np) && id == (sensor_specs.args_count ? sensor_specs.args[0] : 0)) { pr_debug("sensor %pOFn id=%d belongs to %pOFn\n", sensor, id, child); |