From 299f7667dbc67a331a0929b28700fc4410b26aca Mon Sep 17 00:00:00 2001 From: Zidan Wang Date: Wed, 2 Dec 2015 11:02:12 +0800 Subject: MLK-11942 ASoC: fsl_asrc_m2m: free pair after allocating m2m failed free pair after allocating m2m failed. Reported by coverity. Signed-off-by: Zidan Wang (cherry picked from commit 237a35db5b48b78250a019f891d9d746c3411d49) --- sound/soc/fsl/fsl_asrc_m2m.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'sound/soc/fsl/fsl_asrc_m2m.c') diff --git a/sound/soc/fsl/fsl_asrc_m2m.c b/sound/soc/fsl/fsl_asrc_m2m.c index 8de37d46940d..0caed6233b6b 100644 --- a/sound/soc/fsl/fsl_asrc_m2m.c +++ b/sound/soc/fsl/fsl_asrc_m2m.c @@ -827,7 +827,8 @@ static int fsl_asrc_open(struct inode *inode, struct file *file) m2m = kzalloc(sizeof(struct fsl_asrc_m2m), GFP_KERNEL); if (!m2m) { dev_err(dev, "failed to allocate m2m resource\n"); - return -ENOMEM; + ret = -ENOMEM; + goto out; } pair->private = m2m; @@ -843,6 +844,10 @@ static int fsl_asrc_open(struct inode *inode, struct file *file) pm_runtime_get_sync(dev); return 0; +out: + kfree(pair); + + return ret; } static int fsl_asrc_close(struct inode *inode, struct file *file) -- cgit v1.2.3