mirror of
https://github.com/torvalds/linux.git
synced 2026-05-26 16:12:59 +02:00
[media] media: platform: exynos4-is: media-dev: Add missing of_node_put
for_each_available_child_of_node and for_each_child_of_node perform an
of_node_get on each iteration, so to break out of the loop an of_node_put is
required.
Found using Coccinelle. The simplified version of the semantic patch
that is used for this is as follows:
// <smpl>
@@
local idexpression n;
expression e,r;
@@
for_each_available_child_of_node(r,n) {
...
(
of_node_put(n);
|
e = n
|
+ of_node_put(n);
? break;
)
...
}
... when != n
// </smpl>
Signed-off-by: Amitoj Kaur Chawla <amitoj1606@gmail.com>
Reviewed-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
This commit is contained in:
parent
0ede1876f7
commit
458a395235
|
|
@ -435,8 +435,10 @@ static int fimc_md_register_sensor_entities(struct fimc_md *fmd)
|
|||
continue;
|
||||
|
||||
ret = fimc_md_parse_port_node(fmd, port, index);
|
||||
if (ret < 0)
|
||||
if (ret < 0) {
|
||||
of_node_put(node);
|
||||
goto rpm_put;
|
||||
}
|
||||
index++;
|
||||
}
|
||||
|
||||
|
|
@ -447,8 +449,10 @@ static int fimc_md_register_sensor_entities(struct fimc_md *fmd)
|
|||
|
||||
for_each_child_of_node(ports, node) {
|
||||
ret = fimc_md_parse_port_node(fmd, node, index);
|
||||
if (ret < 0)
|
||||
if (ret < 0) {
|
||||
of_node_put(node);
|
||||
break;
|
||||
}
|
||||
index++;
|
||||
}
|
||||
rpm_put:
|
||||
|
|
@ -656,8 +660,10 @@ static int fimc_md_register_platform_entities(struct fimc_md *fmd,
|
|||
ret = fimc_md_register_platform_entity(fmd, pdev,
|
||||
plat_entity);
|
||||
put_device(&pdev->dev);
|
||||
if (ret < 0)
|
||||
if (ret < 0) {
|
||||
of_node_put(node);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
return ret;
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user