tree 70034ca360b83b8e8f63c711b8a49bfc6b7eee3c
parent f009627b71eacfeede3d63b00a25afdf5e3e24bb
author Julia Lawall <julia@diku.dk> 1285994227 +0000
committer David S. Miller <davem@davemloft.net> 1286168771 -0700

drivers/atm/idt77252.c: Remove unnecessary error check

This code does not call deinit_card(card); in an error case, as done in
other error-handling code in the same function.  But actually, the called
function init_sram can only return 0, so there is no need for the error
check at all.

init_sram is also given a void return type, and its single return statement
at the end of the function is dropped.

A simplified version of the sematic match that finds this problem is as
follows: (http://coccinelle.lip6.fr/)

// <smpl>
@r exists@
@r@
statement S1,S2,S3;
constant C1,C2,C3;
@@

*if (...)
 {... S1 return -C1;}
...
*if (...)
 {... when != S1
    return -C2;}
...
*if (...)
 {... S1 return -C3;}
// </smpl>

Signed-off-by: Julia Lawall <julia@diku.dk>
Signed-off-by: David S. Miller <davem@davemloft.net>
