Received: by 2002:a05:6a10:f347:0:0:0:0 with SMTP id d7csp3038319pxu; Tue, 8 Dec 2020 01:38:14 -0800 (PST) X-Google-Smtp-Source: ABdhPJwVUh8uA6gwQIM/sIwZH5Sz+nawGNOH7x2ttcGOFeop13tVG+wjD12fhm8Q4fX5wHtzOXLw X-Received: by 2002:a17:906:f0d0:: with SMTP id dk16mr9090321ejb.144.1607420294440; Tue, 08 Dec 2020 01:38:14 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1607420294; cv=none; d=google.com; s=arc-20160816; b=XADnfu+FxsZPsi/s2TwRiLx2t3um83DPaUo0IXc+r2qjZvUxOZEjwvflEAABx4vEEh HT85CZNrxCrkzp1SGWmtDfcCiKVNqak29uKGFNOLQToRjHUKtyuvC+xyGbi1WQov4zDn e8H+3DC9GCtymNcp0KmzKukwzf+e4L4QcIPCRUz4ruHt1wSGVwcbonoiopdI2ktPcnUm SOVdWy6Ia9NWXOvJj1E755A7Akj0DWVeCcWTvDB1nGR3IYItL6QbVIb6MjulosGr62hP Fqe9vnJKTmG7Xena5U0/iFGzA+f4y5VOBkvFzvx92KNLw4+81X7k+H74Bs3pydgoD8Mz LVNA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-disposition:mime-version :references:message-id:subject:cc:to:from:date; bh=n46FeDvrQgslntB/QvyVhRFq+v4FH13erjugPCMtV1w=; b=X8RhgKLlYPhS5dytCmEPKJcHeY3Y8D4EScjzVUNYjEqgO6d27Wz3IsU31o56ISSAA/ YihUHW6bH8JDg/p2l/WcwDw8WRPphpV3LpWpJOeJrx9cavsY0rkidoyGHZtJQgIs4cGL Qp2qsq5ZyCP/Ivh8iedrfbwaSDQE3qgyiDXLOb/XzecgQK8DNi5R2b4JXbUoxTlC/hN8 qZK2y5g5J46Cb1epyCXleFwU+YUohdkTxp2fWcsgxxoVGEOZZXfgpJeg9wSflUUl2oDq tyCN5Jqd7vBYtCGaAOM7+DuUTHH1biirs4KrtsM0HL05HDNpGq9UDHLmDadIXHqa+lgH tgdA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id p12si7650686ejf.542.2020.12.08.01.37.51; Tue, 08 Dec 2020 01:38:14 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728893AbgLHJfH (ORCPT + 99 others); Tue, 8 Dec 2020 04:35:07 -0500 Received: from mail-lj1-f196.google.com ([209.85.208.196]:47020 "EHLO mail-lj1-f196.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727482AbgLHJfH (ORCPT ); Tue, 8 Dec 2020 04:35:07 -0500 Received: by mail-lj1-f196.google.com with SMTP id f24so18311081ljk.13 for ; Tue, 08 Dec 2020 01:34:50 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=n46FeDvrQgslntB/QvyVhRFq+v4FH13erjugPCMtV1w=; b=fXx4Y53DkBhBO0xIwVRAmR32ASJocd0agEanjnHZ1OO9DjlIrjr1xGPHnM0WVoODYk pfcaLP1Qhe7rDeG+t1uibXANFb/QQH/H637Yoa+TtA+zv+oY/TYlGd04dAlYVFlNiuwm ANU1r0EQovXQUvubU5ymsZv1w4LR9foMY4rmGW9IZ9WNFzBvGPR67SGPAr4jSOUOaJBx M1u1gNCrCE0S7bkAd4N6XHr9BoPu+5VYq3Gs4SmsLoecFyqcEHIgoNVQRqGEDc0t1IXm s6bB8basSbLZRWT3nHi1XHp1qHg9znlrI2PH2VtmKZX11zmgAYiu/MrV8BQeBqS6tJbl Cllg== X-Gm-Message-State: AOAM531VAsFpDctXuJ7cbqpFxBOE0ELPB7+CNQBfwOcMHZm9/oQvFmr+ iHyS55yRyoTju/+Og9oz774= X-Received: by 2002:a2e:7119:: with SMTP id m25mr679541ljc.229.1607420065262; Tue, 08 Dec 2020 01:34:25 -0800 (PST) Received: from xi.terra (c-beaee455.07-184-6d6c6d4.bbcust.telenor.se. [85.228.174.190]) by smtp.gmail.com with ESMTPSA id g69sm739199lfd.161.2020.12.08.01.34.24 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 08 Dec 2020 01:34:24 -0800 (PST) Received: from johan by xi.terra with local (Exim 4.93.0.4) (envelope-from ) id 1kmZOg-0002UD-GE; Tue, 08 Dec 2020 10:35:02 +0100 Date: Tue, 8 Dec 2020 10:35:02 +0100 From: Johan Hovold To: Wang Hai Cc: johan@kernel.org, vaibhav.sr@gmail.com, elder@kernel.org, gregkh@linuxfoundation.org, dan.carpenter@oracle.com, aibhav.sr@gmail.com, greybus-dev@lists.linaro.org, devel@driverdev.osuosl.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH] staging: greybus: audio: Fix possible leak free widgets in gbaudio_dapm_free_controls Message-ID: References: <20201205103827.31244-1-wanghai38@huawei.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20201205103827.31244-1-wanghai38@huawei.com> Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Sat, Dec 05, 2020 at 06:38:27PM +0800, Wang Hai wrote: > In gbaudio_dapm_free_controls(), if one of the widgets is not found, an error > will be returned directly, which will cause the rest to be unable to be freed, > resulting in leak. > > This patch fixes the bug. If if one of them is not found, just skip and free the others. Apart from the typo, please break your lines at 72 columns or so (not needed for the Fixes tag). > Fixes: 510e340efe0c ("staging: greybus: audio: Add helper APIs for dynamic audio module") > Reported-by: Hulk Robot > Signed-off-by: Wang Hai > --- > drivers/staging/greybus/audio_helper.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/drivers/staging/greybus/audio_helper.c b/drivers/staging/greybus/audio_helper.c > index 237531ba60f3..3011b8abce38 100644 > --- a/drivers/staging/greybus/audio_helper.c > +++ b/drivers/staging/greybus/audio_helper.c > @@ -135,7 +135,8 @@ int gbaudio_dapm_free_controls(struct snd_soc_dapm_context *dapm, > if (!w) { > dev_err(dapm->dev, "%s: widget not found\n", > widget->name); > - return -EINVAL; > + widget++; > + continue; > } > widget++; > #ifdef CONFIG_DEBUG_FS Not sure if we can ever have the widget lookup fail, but at least this looks consistent now. Reviewed-by: Johan Hovold Johan