Received: by 2002:a25:ab43:0:0:0:0:0 with SMTP id u61csp6806935ybi; Wed, 5 Jun 2019 06:44:11 -0700 (PDT) X-Google-Smtp-Source: APXvYqzgSiNRbKkBLpw/LoJNWDA6c/f/AAwCqDsqSFKD9oXcCEYtjaBaPfBixKmLFaGRMeQNEftx X-Received: by 2002:a63:1119:: with SMTP id g25mr4461862pgl.380.1559742251496; Wed, 05 Jun 2019 06:44:11 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1559742251; cv=none; d=google.com; s=arc-20160816; b=oAQ7cX3a6qdXRh4URRLFhBDj5hejG64SiS75biukyv+SriBKU99Q4m9qrM5Ky91Hl6 5xveDThrtWG/D/zNBN9z+/ZgfzeTaDw+iJzyXIQRL6D1TmncU+zIgYt8pJbxzjEE5+ai yA93z2bFEdMsTancyqpm8woU2ow0EpAivM/kih4LMDnK8fXGvt+wt7/VzMRWPg2Bujzt UHObx9mOqn6x8VEfvxrnwJIkcpTG5m2Fc80iAYNHwjdxb1lzqOixbtl0XtAUoQJiKJL/ KMpSpFQQC2I4WSt+02AptvK/BdaEMFMGfHes0q3QI8N3G2Ixg9W+TbBOE875N3qcI5Za 1rZA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from; bh=gkr0xLowoZ9zRhiUqHnhq6qtO2gggzv7LSma7jtIdA0=; b=AWg+vQZQVlZCoj6xHPSJ07P7Sfb39vKuh1lxIlLh3jTynhorCfVEgUwbSn1finynGK yK3PZOxLX5xgW+Z14QHXhgYRf+UjehD2W0VR3IJfokCpPm6ANo6cka6I5s7fNSLagUlY rF5jLuiSA6O+it2APmrSXexE4+Ch4w3CdIMCXpnZtxJE3YThAH5b5OjKdLmKIYUFm6Tg yTbtUzhfngmd39xARyYjOuo2x0MB09MK1VbDPLUgFgXV9T6f6rKS+VgTqAe04C1NGc15 UgSJnDBYtV+5LVyR+3QPd4eLP5GYoHpFtLI4HYMj4KiA+1IJxHG4EfYGvF/W6zB0dQCy ISyg== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id d34si27290099pgd.558.2019.06.05.06.43.54; Wed, 05 Jun 2019 06:44:11 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727820AbfFENmb (ORCPT + 99 others); Wed, 5 Jun 2019 09:42:31 -0400 Received: from mga14.intel.com ([192.55.52.115]:51941 "EHLO mga14.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728127AbfFENm2 (ORCPT ); Wed, 5 Jun 2019 09:42:28 -0400 X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga004.jf.intel.com ([10.7.209.38]) by fmsmga103.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 05 Jun 2019 06:42:28 -0700 X-ExtLoop1: 1 Received: from xxx.igk.intel.com ([10.237.93.170]) by orsmga004.jf.intel.com with ESMTP; 05 Jun 2019 06:42:25 -0700 From: =?UTF-8?q?Amadeusz=20S=C5=82awi=C5=84ski?= To: alsa-devel@alsa-project.org Cc: Jaroslav Kysela , Takashi Iwai , Liam Girdwood , Mark Brown , Pierre-Louis Bossart , Jie Yang , Cezary Rojewski , linux-kernel@vger.kernel.org, =?UTF-8?q?Amadeusz=20S=C5=82awi=C5=84ski?= , Vinod Koul Subject: [PATCH 04/14] ASoC: compress: Fix memory leak from snd_soc_new_compress Date: Wed, 5 Jun 2019 15:45:46 +0200 Message-Id: <20190605134556.10322-5-amadeuszx.slawinski@linux.intel.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20190605134556.10322-1-amadeuszx.slawinski@linux.intel.com> References: <20190605134556.10322-1-amadeuszx.slawinski@linux.intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Change kzalloc to devm_kzalloc, so compr gets automatically freed when it's no longer needed. Signed-off-by: Amadeusz Sławiński --- sound/soc/soc-compress.c | 17 ++++++----------- 1 file changed, 6 insertions(+), 11 deletions(-) diff --git a/sound/soc/soc-compress.c b/sound/soc/soc-compress.c index 03d5b9ccd3fc..ddef4ff677ce 100644 --- a/sound/soc/soc-compress.c +++ b/sound/soc/soc-compress.c @@ -896,16 +896,14 @@ int snd_soc_new_compress(struct snd_soc_pcm_runtime *rtd, int num) else direction = SND_COMPRESS_CAPTURE; - compr = kzalloc(sizeof(*compr), GFP_KERNEL); + compr = devm_kzalloc(rtd->card->dev, sizeof(*compr), GFP_KERNEL); if (!compr) return -ENOMEM; compr->ops = devm_kzalloc(rtd->card->dev, sizeof(soc_compr_ops), GFP_KERNEL); - if (!compr->ops) { - ret = -ENOMEM; - goto compr_err; - } + if (!compr->ops) + return -ENOMEM; if (rtd->dai_link->dynamic) { snprintf(new_name, sizeof(new_name), "(%s)", @@ -918,7 +916,7 @@ int snd_soc_new_compress(struct snd_soc_pcm_runtime *rtd, int num) dev_err(rtd->card->dev, "Compress ASoC: can't create compressed for %s: %d\n", rtd->dai_link->name, ret); - goto compr_err; + return ret; } rtd->pcm = be_pcm; @@ -954,7 +952,7 @@ int snd_soc_new_compress(struct snd_soc_pcm_runtime *rtd, int num) dev_err(component->dev, "Compress ASoC: can't create compress for codec %s: %d\n", component->name, ret); - goto compr_err; + return ret; } /* DAPM dai link stream work */ @@ -965,10 +963,7 @@ int snd_soc_new_compress(struct snd_soc_pcm_runtime *rtd, int num) dev_info(rtd->card->dev, "Compress ASoC: %s <-> %s mapping ok\n", codec_dai->name, cpu_dai->name); - return ret; -compr_err: - kfree(compr); - return ret; + return 0; } EXPORT_SYMBOL_GPL(snd_soc_new_compress); -- 2.17.1