summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJulia Lawall <julia@diku.dk>2011-08-20 08:12:41 +0200
committerTakashi Iwai <tiwai@suse.de>2011-08-20 09:27:04 +0200
commitde75577c8c3ab733f808c65e1a9d55882efde68e (patch)
tree09c9b6f77ecb2c8e4bdd823c8748606cddf8f3d0
parent1b004d03d8670bdd871e0f297ed20bc510e404de (diff)
downloadlinux-3.10-de75577c8c3ab733f808c65e1a9d55882efde68e.tar.gz
linux-3.10-de75577c8c3ab733f808c65e1a9d55882efde68e.tar.bz2
linux-3.10-de75577c8c3ab733f808c65e1a9d55882efde68e.zip
ALSA: sound/aoa/fabrics/layout.c: remove unneeded kfree
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@diku.dk> Signed-off-by: Takashi Iwai <tiwai@suse.de>
-rw-r--r--sound/aoa/fabrics/layout.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sound/aoa/fabrics/layout.c b/sound/aoa/fabrics/layout.c
index 3fd1a7e2492..552b97afbca 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;
}