clk: versatile: test returned value
authorJulia Lawall <Julia.Lawall@lip6.fr>
Sat, 4 Apr 2015 14:59:29 +0000 (16:59 +0200)
committerStephen Boyd <sboyd@codeaurora.org>
Thu, 9 Apr 2015 15:19:31 +0000 (08:19 -0700)
Put NULL test on the result of the previous call instead on one of its
arguments.  A simplified version of the semantic match that finds this
problem is as follows (http://coccinelle.lip6.fr/):

// <smpl>
r@
expression *e1;
expression *e2;
identifier f;
statement S1,S2;
@@

e1 = f(...,e2,...);
(
if (e1 == NULL || ...) S1 else S2
|
*if (e2 == NULL || ...) S1 else S2
)
// </smpl>

Signed-off-by: Julia Lawall <Julia.Lawall@lip6.fr>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
drivers/clk/versatile/clk-versatile.c

index a76981e88cb6cc5d941d67095c44f7fbfbed2ae3..7a4f8635bd1eb31ce8bbb68e755f124bd5f12f00 100644 (file)
@@ -69,7 +69,7 @@ static void __init cm_osc_setup(struct device_node *np,
                struct device_node *parent;
 
                parent = of_get_parent(np);
-               if (!np) {
+               if (!parent) {
                        pr_err("no parent on core module clock\n");
                        return;
                }