[PATCH] video: of_display_timing: Fix device node reference leak in of_get_display_timings()

Felix Gu posted 1 patch 1 week, 1 day ago
drivers/video/of_display_timing.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
[PATCH] video: of_display_timing: Fix device node reference leak in of_get_display_timings()
Posted by Felix Gu 1 week, 1 day ago
Use for_each_child_of_node_scoped instead of for_each_child_of_node
to ensure automatic of_node_put on early exit paths, preventing
device node reference leak.

Fixes: cc3f414cf2e4 ("video: add of helper for display timings/videomode")
Signed-off-by: Felix Gu <ustc.gu@gmail.com>
---
 drivers/video/of_display_timing.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/video/of_display_timing.c b/drivers/video/of_display_timing.c
index 1940c9505dd3..a6ec392253c3 100644
--- a/drivers/video/of_display_timing.c
+++ b/drivers/video/of_display_timing.c
@@ -195,7 +195,7 @@ struct display_timings *of_get_display_timings(const struct device_node *np)
 	disp->num_timings = 0;
 	disp->native_mode = 0;
 
-	for_each_child_of_node(timings_np, entry) {
+	for_each_child_of_node_scoped(timings_np, child) {
 		struct display_timing *dt;
 		int r;
 
@@ -206,7 +206,7 @@ struct display_timings *of_get_display_timings(const struct device_node *np)
 			goto timingfail;
 		}
 
-		r = of_parse_display_timing(entry, dt);
+		r = of_parse_display_timing(child, dt);
 		if (r) {
 			/*
 			 * to not encourage wrong devicetrees, fail in case of
@@ -218,7 +218,7 @@ struct display_timings *of_get_display_timings(const struct device_node *np)
 			goto timingfail;
 		}
 
-		if (native_mode == entry)
+		if (native_mode == child)
 			disp->native_mode = disp->num_timings;
 
 		disp->timings[disp->num_timings] = dt;

---
base-commit: 33a647c659ffa5bdb94abc345c8c86768ff96215
change-id: 20260131-of_display_timging-ef874a2d049b

Best regards,
-- 
Felix Gu <ustc.gu@gmail.com>
Re: [PATCH] video: of_display_timing: Fix device node reference leak in of_get_display_timings()
Posted by Helge Deller 2 days, 2 hours ago
On 1/31/26 13:48, Felix Gu wrote:
> Use for_each_child_of_node_scoped instead of for_each_child_of_node
> to ensure automatic of_node_put on early exit paths, preventing
> device node reference leak.
> 
> Fixes: cc3f414cf2e4 ("video: add of helper for display timings/videomode")
> Signed-off-by: Felix Gu <ustc.gu@gmail.com>
> ---
>   drivers/video/of_display_timing.c | 6 +++---
>   1 file changed, 3 insertions(+), 3 deletions(-)

applied.
Thanks!
Helge