On Fri, Oct 09, 2015 at 07:47:40PM +0200, Julia Lawall wrote:
> for_each_child_of_node performs an of_node_put on each iteration, so
> putting an of_node_put before a continue results in a double put.
>
> The semantic match that finds this problem is as follows
> (http://coccinelle.lip6.fr):
>
> //
> @@
> expression root,e;
> local idexpression child;
> iterator name for_each_child_of_node;
> @@
>
> for_each_child_of_node(root, child) {
> ... when != of_node_get(child)
> * of_node_put(child);
> ...
> * continue;
> }
> //
>
> Signed-off-by: Julia Lawall
>
> ---
> drivers/memory/tegra/mc.c | 4 +---
> drivers/memory/tegra/tegra124-emc.c | 4 +---
> 2 files changed, 2 insertions(+), 6 deletions(-)
Applied, thanks.
Thierry