tree db21a1f76bc383975c6b01c6aa1a6c6c385d3905
parent 27d751bfa41bdc022d1357479ff67c6902c02c8c
author Julia Lawall <julia.lawall@lip6.fr> 1428235588 +0200
committer David S. Miller <davem@davemloft.net> 1428434515 -0400

cosa: fix error return code

Return a negative error code on failure.

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

// <smpl>
@@
identifier ret; expression e1,e2;
@@
(
if (\(ret < 0\|ret != 0\))
 { ... return ret; }
|
ret = 0
)
... when != ret = e1
    when != &ret
*if(...)
{
  ... when != ret = e2
      when forall
 return ret;
}
// </smpl>

Signed-off-by: Julia Lawall <Julia.Lawall@lip6.fr>
Signed-off-by: David S. Miller <davem@davemloft.net>
