Received: by 2002:a05:6a10:f347:0:0:0:0 with SMTP id d7csp200938pxu; Fri, 4 Dec 2020 00:43:46 -0800 (PST) X-Google-Smtp-Source: ABdhPJxSDDEqKKBay20f56v2uKB5UxxKRLKtxTRz74/HXBbb+u5hlf+laStbfFG/jRYaajWLs6fi X-Received: by 2002:a50:cdc8:: with SMTP id h8mr6500701edj.37.1607071425855; Fri, 04 Dec 2020 00:43:45 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1607071425; cv=none; d=google.com; s=arc-20160816; b=GlbGY5wOcfSrUIOVSbs2HLqh8o0i1RZuSvBhI5v/Vnht9O+cT7QjLEaRVdSMrSE32b DRGm9itCUqsa7aV4ZD/N3WpzayG9kIoBoyAlQODHU1mDcMLOBSRfogbfp+AallPgDuAN j+FS4AhdEtTXaP0Y9NdBAxgfulYVAATMDcExak3Ns3ExrrcQTCsImPu0HdPt85EvBxkT bGEB90e4R2w9pY1RljJG3H3p0YFZblhGbFi3hek2A+nje3ojHtWCo6thR/IZ4bR2Q2CH 7+dZRYVGwjQhszyIcxynJJGIsI2t/iIBVmC1gPXLubcKhuOz4Sy4LOBVAF7F4+91R+2w CGqA== 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=Yiu8+tXTBsSe5C/YobYcYIjj+kze1oiRLa7kn7MZ3yI=; b=KYuhm18LxLvvi0tYluQOH14I3gdMR+614EMyh2XRGp684OMrjV24kuGnzpgcLJBXFM 5EKRruoi1XOhLjDhCgx/YlQ2xQusS2CesNLFZa9b0d/G62eFUnSfAzlD3GaajSX0Y37M CbQrUUHcj8y2oeYuWuGODtMD6/jEXi1r3rIB+jDUstC9t9fv6zk1QRNevxtE6OoCvNXX ebYz+b4Q5kG9f7qIaHJcG/se2SqG4bFxeMyXPbqMHjMZdQc5BKZIZa9PwzRHpHeebmqg QZb3JhbEXu5LDqVYzLQIQVfFyusayAedFfs2aUncW3mEOiNfnvzyYTPX5NAjdUF88z7k Onyw== 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 t16si3143080edi.490.2020.12.04.00.43.22; Fri, 04 Dec 2020 00:43:45 -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 S2387466AbgLDIkv (ORCPT + 99 others); Fri, 4 Dec 2020 03:40:51 -0500 Received: from mail-lj1-f194.google.com ([209.85.208.194]:44394 "EHLO mail-lj1-f194.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729171AbgLDIku (ORCPT ); Fri, 4 Dec 2020 03:40:50 -0500 Received: by mail-lj1-f194.google.com with SMTP id s9so5643345ljo.11 for ; Fri, 04 Dec 2020 00:40:34 -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=Yiu8+tXTBsSe5C/YobYcYIjj+kze1oiRLa7kn7MZ3yI=; b=oXnXzfea/JkvVBE2jIL8eqUgW0HkMM645jkkSSR+acMmI2Zezp+GZKHM3an0PCSaqs f/AaUb9AMJeB7dIa5SHEtwbt/Y/82SXOk5rJ3ixbOOWR1LwYU43b+x9Hyv7DHotWxldj Q17tH/1ptjNUUgtpFyMnqSnMyqht153/RiwhhHTkF6XD/IGUD5GyCNfW3PBPGppQCFfA jaN7c8DMiqit8E0rrAHKaAr34lqWovCerJH8frrk3fotu0f8OJgBzOCKKOXbrRNV2O/F VVANB0RJ9P4CyUZBW38URfwne/rl3uwNeu+k1hdyePnZMfl+9pcbaYS6cVPZXvTVe6m7 tSOQ== X-Gm-Message-State: AOAM532pV0TaTV+5dYOEQnVC+ZIOdkes7wF2b1QFrBkr9fJqv4nhe0k6 z/EkauKxOtY+1Fui1p9ddnc= X-Received: by 2002:a2e:97c1:: with SMTP id m1mr3095064ljj.278.1607071208414; Fri, 04 Dec 2020 00:40:08 -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 q26sm1444609lfd.260.2020.12.04.00.40.07 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 04 Dec 2020 00:40:07 -0800 (PST) Received: from johan by xi.terra with local (Exim 4.93.0.4) (envelope-from ) id 1kl6ds-0001aJ-JQ; Fri, 04 Dec 2020 09:40:41 +0100 Date: Fri, 4 Dec 2020 09:40:40 +0100 From: Johan Hovold To: Wang Hai , Vaibhav Agarwal Cc: johan@kernel.org, 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: Add missing unlock in gbaudio_dapm_free_controls() Message-ID: References: <20201204021350.28182-1-wanghai38@huawei.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20201204021350.28182-1-wanghai38@huawei.com> Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, Dec 04, 2020 at 10:13:50AM +0800, Wang Hai wrote: > Add the missing unlock before return from function > gbaudio_dapm_free_controls() in the error handling case. > > 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 | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/drivers/staging/greybus/audio_helper.c b/drivers/staging/greybus/audio_helper.c > index 237531ba60f3..293675dbea10 100644 > --- a/drivers/staging/greybus/audio_helper.c > +++ b/drivers/staging/greybus/audio_helper.c > @@ -135,6 +135,7 @@ int gbaudio_dapm_free_controls(struct snd_soc_dapm_context *dapm, > if (!w) { > dev_err(dapm->dev, "%s: widget not found\n", > widget->name); > + mutex_unlock(&dapm->card->dapm_mutex); > return -EINVAL; > } > widget++; This superficially looks correct, but there seems to be another bug in this function. It can be used free an array of widgets, but if one of them isn't found we just leak the rest. Perhaps that return should rather be "widget++; continue;". Vaibhav? Johan