[PATCH] media: platform: exynos4-is: media-dev: Add missing of_node_put
From: Mauro Carvalho Chehab <hidden>
Date: 2016-01-26 09:12:55
Also in:
linux-media, linux-samsung-soc, lkml
From: Mauro Carvalho Chehab <hidden>
Date: 2016-01-26 09:12:55
Also in:
linux-media, linux-samsung-soc, lkml
Em Tue, 26 Jan 2016 08:12:15 +0100 Julia Lawall [off-list ref] escreveu:
On Tue, 26 Jan 2016, Krzysztof Kozlowski wrote:quoted
On 26.01.2016 15:24, Julia Lawall wrote:quoted
On Tue, 26 Jan 2016, Krzysztof Kozlowski wrote:quoted
On 26.01.2016 00:21, Amitoj Kaur Chawla wrote:quoted
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>Patch iselft looks correct but why are you pasting coccinelle script into the message? The script is already present in Linux kernel: scripts/coccinelle/iterators/device_node_continue.cocciI don't think so. The continue one takes care of the case where there is an extraneous of_node_put before a continue, not a missing one before a break. But OK to drop it if it doesn't seem useful. juliaYou are right - this is not covered by that cocci patch... but I think is covered by scripts/coccinelle/iterators/fen.cocci, isn't it?Not quite.
If the script is not part of the Kernel, please keep the script in the patch, as it could be useful in some future. Regards, Mauro