linux-pm.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 1/3] thermal: of: Fix OF node leak in thermal_of_trips_init() error path
@ 2024-08-14 19:58 Krzysztof Kozlowski
  2024-08-14 19:58 ` [PATCH 2/3] thermal: of: Fix OF node leak in thermal_of_zone_register() Krzysztof Kozlowski
                   ` (5 more replies)
  0 siblings, 6 replies; 17+ messages in thread
From: Krzysztof Kozlowski @ 2024-08-14 19:58 UTC (permalink / raw)
  To: Rafael J. Wysocki, Daniel Lezcano, Zhang Rui, Lukasz Luba,
	linux-pm, linux-kernel
  Cc: Krzysztof Kozlowski, stable

Terminating for_each_child_of_node() loop requires dropping OF node
reference, so bailing out after thermal_of_populate_trip() error misses
this.  Solve the OF node reference leak with scoped
for_each_child_of_node_scoped().

Fixes: d0c75fa2c17f ("thermal/of: Initialize trip points separately")
Cc: <stable@vger.kernel.org>
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
---
 drivers/thermal/thermal_of.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/thermal/thermal_of.c b/drivers/thermal/thermal_of.c
index aa34b6e82e26..30f8d6e70484 100644
--- a/drivers/thermal/thermal_of.c
+++ b/drivers/thermal/thermal_of.c
@@ -125,7 +125,7 @@ static int thermal_of_populate_trip(struct device_node *np,
 static struct thermal_trip *thermal_of_trips_init(struct device_node *np, int *ntrips)
 {
 	struct thermal_trip *tt;
-	struct device_node *trips, *trip;
+	struct device_node *trips;
 	int ret, count;
 
 	trips = of_get_child_by_name(np, "trips");
@@ -150,7 +150,7 @@ static struct thermal_trip *thermal_of_trips_init(struct device_node *np, int *n
 	*ntrips = count;
 
 	count = 0;
-	for_each_child_of_node(trips, trip) {
+	for_each_child_of_node_scoped(trips, trip) {
 		ret = thermal_of_populate_trip(trip, &tt[count++]);
 		if (ret)
 			goto out_kfree;
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2024-08-22 19:05 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-08-14 19:58 [PATCH 1/3] thermal: of: Fix OF node leak in thermal_of_trips_init() error path Krzysztof Kozlowski
2024-08-14 19:58 ` [PATCH 2/3] thermal: of: Fix OF node leak in thermal_of_zone_register() Krzysztof Kozlowski
2024-08-15  4:51   ` Chen-Yu Tsai
2024-08-22 16:10   ` Daniel Lezcano
2024-08-14 19:58 ` [PATCH 3/3] thermal: of: Fix OF node leak in of_thermal_zone_find() error paths Krzysztof Kozlowski
2024-08-15  4:54   ` Chen-Yu Tsai
2024-08-22 16:11   ` Daniel Lezcano
2024-08-22 19:05     ` Rafael J. Wysocki
2024-08-15  4:48 ` [PATCH 1/3] thermal: of: Fix OF node leak in thermal_of_trips_init() error path Chen-Yu Tsai
2024-08-15  6:48 ` Markus Elfring
2024-08-19 10:12 ` Daniel Lezcano
2024-08-19 13:20   ` Rafael J. Wysocki
2024-08-19 13:22     ` Daniel Lezcano
2024-08-19 13:31       ` Rafael J. Wysocki
2024-08-22 15:54         ` Rafael J. Wysocki
2024-08-22 16:09           ` Daniel Lezcano
2024-08-22 16:09 ` Daniel Lezcano

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).