2015-10-10 21:30 GMT+09:00 Julia Lawall <julia.law...@lip6.fr>: > for_each_child_of_node performs an of_node_get on each iteration, so > a break out of the loop requires an of_node_put. > > The semantic patch that fixes this problem is as follows > (http://coccinelle.lip6.fr): > > // <smpl> > @@ > expression root,e; > local idexpression child; > @@ > > for_each_child_of_node(root, child) { > ... when != of_node_put(child) > when != e = child > ( > return child; > | > + of_node_put(child); > ? return ...; > ) > ... > } > // </smpl> > > Signed-off-by: Julia Lawall <julia.law...@lip6.fr> > > --- > drivers/power/charger-manager.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) >
Reviewed-by: Krzysztof Kozlowski <k.kozlow...@samsung.com> Best regards, Krzysztof -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/