Skip to content
/ linux Public

Commit 68dae7b

Browse files
outman119Sasha Levin
authored andcommitted
fbdev: of_display_timing: Fix device node reference leak in of_get_display_timings()
[ Upstream commit c39ee2d ] 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: cc3f414 ("video: add of helper for display timings/videomode") Signed-off-by: Felix Gu <ustc.gu@gmail.com> Signed-off-by: Helge Deller <deller@gmx.de> Signed-off-by: Sasha Levin <sashal@kernel.org>
1 parent ca81f78 commit 68dae7b

File tree

1 file changed

+3
-3
lines changed

1 file changed

+3
-3
lines changed

drivers/video/of_display_timing.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -195,7 +195,7 @@ struct display_timings *of_get_display_timings(const struct device_node *np)
195195
disp->num_timings = 0;
196196
disp->native_mode = 0;
197197

198-
for_each_child_of_node(timings_np, entry) {
198+
for_each_child_of_node_scoped(timings_np, child) {
199199
struct display_timing *dt;
200200
int r;
201201

@@ -206,7 +206,7 @@ struct display_timings *of_get_display_timings(const struct device_node *np)
206206
goto timingfail;
207207
}
208208

209-
r = of_parse_display_timing(entry, dt);
209+
r = of_parse_display_timing(child, dt);
210210
if (r) {
211211
/*
212212
* 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)
218218
goto timingfail;
219219
}
220220

221-
if (native_mode == entry)
221+
if (native_mode == child)
222222
disp->native_mode = disp->num_timings;
223223

224224
disp->timings[disp->num_timings] = dt;

0 commit comments

Comments
 (0)