From mboxrd@z Thu Jan 1 00:00:00 1970 From: Darren Hart Date: Fri, 16 Mar 2018 21:52:38 +0000 Subject: Re: [PATCH v2] platform/x86: Fix memory leaks in build_tokens_sysfs() Message-Id: <20180316215238.GA41192@localhost.localdomain> List-Id: References: <20180316121015.GA14282@mwanda> In-Reply-To: <20180316121015.GA14282@mwanda> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: kernel-janitors@vger.kernel.org On Fri, Mar 16, 2018 at 08:35:44PM +0200, Andy Shevchenko wrote: > On Fri, Mar 16, 2018 at 2:10 PM, Dan Carpenter wrote: > > We're freeing "value_name" which is NULL, so that's a no-op, but we > > intended to free "location_name" instead. And then we don't free the > > names in token_location_attrs[0] and token_value_attrs[0]. > > > > Fixes: 33b9ca1e53b4 ("platform/x86: dell-smbios: Add a sysfs interface for SMBIOS tokens") > > Signed-off-by: Dan Carpenter > > --- > > v2: style changes (move from a for loop to a while loop) and this driver > > has been renamed. > > > > diff --git a/drivers/platform/x86/dell-smbios-base.c b/drivers/platform/x86/dell-smbios-base.c > > index 2485c80a9fdd..ec31d149f82e 100644 > > --- a/drivers/platform/x86/dell-smbios-base.c > > +++ b/drivers/platform/x86/dell-smbios-base.c > > @@ -514,7 +514,7 @@ static int build_tokens_sysfs(struct platform_device *dev) > > continue; > > > > loop_fail_create_value: > > - kfree(value_name); > > + kfree(location_name); > > goto out_unwind_strings; > > } > > smbios_attribute_group.attrs = token_attrs; > > @@ -525,7 +525,7 @@ static int build_tokens_sysfs(struct platform_device *dev) > > return 0; > > > > out_unwind_strings: > > - for (i = i-1; i > 0; i--) { > > + while (--i >= 0) { > > Simple > > while (i--) { Yeah, i starts at 0 and is not decremented anywhere but here, so i-- seems sufficient to me. -- Darren Hart VMware Open Source Technology Center