Received: by 2002:a05:7412:8d10:b0:f3:1519:9f41 with SMTP id bj16csp4810331rdb; Tue, 12 Dec 2023 09:53:35 -0800 (PST) X-Google-Smtp-Source: AGHT+IE4Kh7fpX1AYMKAnrLmESAUY3O1kA5ax/RzMN9CbZkr0sCOZXmde6sRXaJO0p8DGLpiZpCz X-Received: by 2002:a05:6a21:a587:b0:18c:fc4:df13 with SMTP id gd7-20020a056a21a58700b0018c0fc4df13mr9785667pzc.27.1702403614606; Tue, 12 Dec 2023 09:53:34 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1702403614; cv=none; d=google.com; s=arc-20160816; b=u88Cq2ygA0a5EGrFCIeiHZY5izoHyA2R84iQPd1tmbGqOJTnZKRpRgvgxMeB87f12n bwpKDlyJUjX5a5NlLxtV2t0FiI/z4TaTFG+FZtU1HWOLM1qsN3wGmUeSGCPIvhxORAKJ Vis2nuNklFHKADBhbobMuDyfXSehBTKpzrM82ILDCr1wKBepSlbl5PkAU4aEiAE3krvs /ZBhdePlpNfZ/RXgmriAVTIwBwGWLuVPwHQHi0XC2Yq4rPWUQIpJMaNE1ErzkAE6a9h6 F8wv4EhdnZ5XSLU8xP2KkDBH9a/5Rb7/PzBLjsBg6mnYOAU1KvObhcebfO0NXevYrKjD rC7w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:in-reply-to:from :content-language:references:cc:to:subject:user-agent:mime-version :date:message-id:dkim-signature; bh=L/MbAWs2OZrOLC1rYEO04nGayLDbwyeb69eSCqKczhU=; fh=vS/c0ZM3UN2iNnDuYTPGDs7XEElobYeuEwAoBqO9E4Y=; b=JS06zoDPY6HAbbu89Vak2LDwydMsYN4TKEMAqGaGVt/34YWCzWNzJasHLQ55bCiI/U T0wyoOq6/d0I9TQejHkWAYRq/f9gzTzjjHaAtwXhPN0kwVgmfX1X469HBm9GlqtzZ0eX /ERcZKZM2931uOLyQo7ajT8mpGUiMtHQHLp3sV/rHtf21qxp0kyv6v6AYjLeLfeZkybb bTK6ihSCEfee76+ToIEiOLZPX1+k+34tGDENIJtyoYS5DO4b3uL70t1ZFhKEpqH4SdsD xla55pASBN8A9Cr5bq1dJtlBVPBI9RpfGa7rFBqTjAg1w1qaw9H2kJDZsbXX0q/m0y0W GlRQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@wanadoo.fr header.s=t20230301 header.b=CaefnQSg; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.31 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=wanadoo.fr Return-Path: Received: from morse.vger.email (morse.vger.email. [23.128.96.31]) by mx.google.com with ESMTPS id c32-20020a634e20000000b005b95ccd1b4dsi7993644pgb.82.2023.12.12.09.53.34 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 12 Dec 2023 09:53:34 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.31 as permitted sender) client-ip=23.128.96.31; Authentication-Results: mx.google.com; dkim=pass header.i=@wanadoo.fr header.s=t20230301 header.b=CaefnQSg; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.31 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=wanadoo.fr Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by morse.vger.email (Postfix) with ESMTP id 7D83880E6096; Tue, 12 Dec 2023 09:53:32 -0800 (PST) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.11 at morse.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1377030AbjLLRxQ (ORCPT + 99 others); Tue, 12 Dec 2023 12:53:16 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:36930 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232546AbjLLRxP (ORCPT ); Tue, 12 Dec 2023 12:53:15 -0500 Received: from smtp.smtpout.orange.fr (smtp-16.smtpout.orange.fr [80.12.242.16]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 26260AB for ; Tue, 12 Dec 2023 09:53:17 -0800 (PST) Received: from [192.168.1.18] ([92.140.202.140]) by smtp.orange.fr with ESMTPA id D6wUrQiNALMHAD6wUrlYvP; Tue, 12 Dec 2023 18:53:15 +0100 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=wanadoo.fr; s=t20230301; t=1702403595; bh=L/MbAWs2OZrOLC1rYEO04nGayLDbwyeb69eSCqKczhU=; h=Date:Subject:To:Cc:References:From:In-Reply-To; b=CaefnQSg6liXBIn+KC3ED6T/XyzXpAePPtyDK6t5uD2Qc3r89YqDv4DkKRbvCl3MQ bEQhMKeLxr0vQoFwbaVJ9Pqe1iH4kjC8VJViLG1iI50rs8O3+XqPG5p/szOtLmSVTg jANYxiamUO3YKTLDD/3rlm01zE/hTmHg8FKXByaiqDWFy5nDLjbaO/mHh4qvrUdqrb ZfRqXJVKzxUfBCelUHiQ5C9IPotseImhXuzte/RmfHW/IcnWg0lJK7omwCRquKQ6aF yLQcv7C+25Hfq/ft7LnPiyjthbIFsI8+3Z4D7XoAvZqgNYW1EntCN6U+Tc8qqvEAJY R6+YK17E5J+9Q== X-ME-Helo: [192.168.1.18] X-ME-Auth: Y2hyaXN0b3BoZS5qYWlsbGV0QHdhbmFkb28uZnI= X-ME-Date: Tue, 12 Dec 2023 18:53:15 +0100 X-ME-IP: 92.140.202.140 Message-ID: <94c5f197-9459-40fe-9c34-06359779a51a@wanadoo.fr> Date: Tue, 12 Dec 2023 18:53:13 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH] cdx: Unlock on error path in rescan_store() To: Dan Carpenter , Abhijit Gangurde Cc: Nipun Gupta , Nikhil Agarwal , Greg Kroah-Hartman , linux-kernel@vger.kernel.org, kernel-janitors@vger.kernel.org References: <8c79956b-bf8c-4511-97cc-a16833a0630f@moroto.mountain> Content-Language: fr From: Christophe JAILLET In-Reply-To: <8c79956b-bf8c-4511-97cc-a16833a0630f@moroto.mountain> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-0.9 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on morse.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (morse.vger.email [0.0.0.0]); Tue, 12 Dec 2023 09:53:32 -0800 (PST) Le 12/12/2023 à 10:20, Dan Carpenter a écrit : > We added locking to this function but these two error paths were > accidentally overlooked. > > Fixes: f0af81683466 ("cdx: Introduce lock to protect controller ops") > Signed-off-by: Dan Carpenter > --- > drivers/cdx/cdx.c | 14 +++++++++----- > 1 file changed, 9 insertions(+), 5 deletions(-) > > diff --git a/drivers/cdx/cdx.c b/drivers/cdx/cdx.c > index d84d153078d7..f4f9f0c88c09 100644 > --- a/drivers/cdx/cdx.c > +++ b/drivers/cdx/cdx.c > @@ -572,12 +572,16 @@ static ssize_t rescan_store(const struct bus_type *bus, > > /* Rescan all the devices */ > for_each_compatible_node(np, NULL, compat_node_name) { > - if (!np) > - return -EINVAL; > + if (!np) { > + count = -EINVAL; > + goto unlock; > + } > > pd = of_find_device_by_node(np); > - if (!pd) > - return -EINVAL; > + if (!pd) { > + count = -EINVAL; > + goto unlock; Unrelated to your patch, but should we have a of_node_put(np); here, on early exit? CJ > + } > > cdx = platform_get_drvdata(pd); > if (cdx && cdx->controller_registered && cdx->ops->scan) > @@ -585,7 +589,7 @@ static ssize_t rescan_store(const struct bus_type *bus, > > put_device(&pd->dev); > } > - > +unlock: > mutex_unlock(&cdx_controller_lock); > > return count;