[PATCH 4/4] sound/aoa/fabrics/layout.c: remove unneeded kfree

Takashi Iwai tiwai at suse.de
Sat Aug 20 17:30:14 EST 2011


At Sat, 20 Aug 2011 08:12:41 +0200,
Julia Lawall wrote:
> 
> From: Julia Lawall <julia at diku.dk>
> 
> The label outnodev is only used when kzalloc has not yet taken place or has
> failed, so there is no need for the call for kfree under this label.
> 
> A simplified version of the semantic match that finds this problem is as
> follows: (http://coccinelle.lip6.fr/)
> 
> // <smpl>
> @@
> identifier x;
> expression E1!=0,E2,E3,E4;
> statement S;
> iterator I;
> @@
> 
> (
> if (...) { ... when != kfree(x)
>                when != x = E3
>                when != E3 = x
> *  return ...;
>  }
> ... when != x = E2
>     when != I(...,x,...) S
> if (...) { ... when != x = E4
>  kfree(x); ... return ...; }
> )
> // </smpl>
> 
> Signed-off-by: Julia Lawall <julia at diku.dk>

Thanks, applied this one.
The rest three are left for review by Mark & Liam.


Takashi



> ---
>  sound/aoa/fabrics/layout.c |    2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/sound/aoa/fabrics/layout.c b/sound/aoa/fabrics/layout.c
> index 3fd1a7e..552b97a 100644
> --- a/sound/aoa/fabrics/layout.c
> +++ b/sound/aoa/fabrics/layout.c
> @@ -1073,10 +1073,10 @@ static int aoa_fabric_layout_probe(struct soundbus_dev *sdev)
>  	sdev->pcmid = -1;
>  	list_del(&ldev->list);
>  	layouts_list_items--;
> +	kfree(ldev);
>   outnodev:
>   	of_node_put(sound);
>   	layout_device = NULL;
> - 	kfree(ldev);
>  	return -ENODEV;
>  }
>  
> 


More information about the devicetree-discuss mailing list