• Julia Lawall's avatar
    drivers/net/can/flexcan.c: add missing clk_put · 2e4ceec4
    Julia Lawall authored
    The failed_get label is used after the call to clk_get has succeeded, so it
    should be moved up above the call to clk_put.
    
    The failed_req labels doesn't do anything different than failed_get, so
    delete it.
    
    A simplified version of the semantic match that finds this problem is as
    follows: (http://coccinelle.lip6.fr/)
    
    // <smpl>
    @r exists@
    expression e1,e2;
    statement S;
    @@
    
    e1 = clk_get@p1(...);
    ... when != e1 = e2
        when != clk_put(e1)
        when any
    if (...) { ... when != clk_put(e1)
                   when != if (...) { ... clk_put(e1) ... }
    * return@p3 ...;
     } else S
    // </smpl>
    Signed-off-by: default avatarJulia Lawall <julia@diku.dk>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    2e4ceec4
flexcan.c 25.5 KB