From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752798AbaGGUm1 (ORCPT ); Mon, 7 Jul 2014 16:42:27 -0400 Received: from v094114.home.net.pl ([79.96.170.134]:53960 "HELO v094114.home.net.pl" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with SMTP id S1751247AbaGGUmZ (ORCPT ); Mon, 7 Jul 2014 16:42:25 -0400 From: "Rafael J. Wysocki" To: Lan Tianyu Cc: Colin King , Len Brown , "linux-acpi@vger.kernel.org" , "linux-kernel@vger kernel org" Subject: Re: [PATCH] ACPI / EC: Free saved_ec on error exit path Date: Mon, 07 Jul 2014 23:00:29 +0200 Message-ID: <1409471.TCjFK6RGzy@vostro.rjw.lan> User-Agent: KMail/4.11.5 (Linux/3.15.0-rc5+; KDE/4.11.5; x86_64; ; ) In-Reply-To: References: <1404344109-30805-1-git-send-email-colin.king@canonical.com> MIME-Version: 1.0 Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="utf-8" Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Friday, July 04, 2014 10:15:52 AM Lan Tianyu wrote: > 2014-07-03 7:35 GMT+08:00 Colin King : > > From: Colin Ian King > > > > Smatch detected two memory leaks on saved_ec: > > > > drivers/acpi/ec.c:1070 acpi_ec_ecdt_probe() warn: possible > > memory leak of 'saved_ec' > > drivers/acpi/ec.c:1109 acpi_ec_ecdt_probe() warn: possible > > memory leak of 'saved_ec' > > > > Free saved_ec on these two error exit paths to stop the memory > > leak. Note that saved_ec maybe null, but kfree on null is allowed. > > > > Acked-by: Lan Tianyu Queued up for 3.16, thanks! > > Signed-off-by: Colin Ian King > > --- > > drivers/acpi/ec.c | 5 ++++- > > 1 file changed, 4 insertions(+), 1 deletion(-) > > > > diff --git a/drivers/acpi/ec.c b/drivers/acpi/ec.c > > index ad11ba4..9800f50 100644 > > --- a/drivers/acpi/ec.c > > +++ b/drivers/acpi/ec.c > > @@ -1066,8 +1066,10 @@ int __init acpi_ec_ecdt_probe(void) > > /* fall through */ > > } > > > > - if (EC_FLAGS_SKIP_DSDT_SCAN) > > + if (EC_FLAGS_SKIP_DSDT_SCAN) { > > + kfree(saved_ec); > > return -ENODEV; > > + } > > > > /* This workaround is needed only on some broken machines, > > * which require early EC, but fail to provide ECDT */ > > @@ -1105,6 +1107,7 @@ install: > > } > > error: > > kfree(boot_ec); > > + kfree(saved_ec); > > boot_ec = NULL; > > return -ENODEV; > > } > > -- > > 2.0.1 > > > > -- > > To unsubscribe from this list: send the line "unsubscribe linux-acpi" in > > the body of a message to majordomo@vger.kernel.org > > More majordomo info at http://vger.kernel.org/majordomo-info.html > > > > -- I speak only for myself. Rafael J. Wysocki, Intel Open Source Technology Center.