drivers/usb/serial/opticon.c: Release resources on kmalloc failure
commitb0795bbf6dc6bd0a7a37d9d1ef4558e9e2b0acd6
authorJulia Lawall <julia@diku.dk>
Fri, 13 May 2011 15:30:46 +0000 (13 17:30 +0200)
committerGreg Kroah-Hartman <gregkh@suse.de>
Fri, 13 May 2011 22:51:08 +0000 (13 15:51 -0700)
tree92e6f17971bf9c4ec0042c654f6a386b0286e051
parent2328ceaea4fb917f8b861b18151b2245233b083f
drivers/usb/serial/opticon.c: Release resources on kmalloc failure

Several resources have been allocated before this kmalloc failure, and thus
they should be released in this error handling code, as done in nearby
error handling code.

The semantic match that finds this problem is:
(http://coccinelle.lip6.fr/)

// <smpl>
@r exists@
local idexpression urb;
statement S;
position p1,p2;
@@

urb = usb_alloc_urb@p1(...);
... when != urb
if (urb == NULL) S
... when != urb
(
return <+...urb...+>;
|
return@p2 ...;
)

@script:python@
p1 << r.p1;
p2 << r.p2;
@@

cocci.print_main("",p1)
cocci.print_secs("",p2)
// </smpl>

Signed-off-by: Julia Lawall <julia@diku.dk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/usb/serial/opticon.c