Received: by 2002:a05:6a10:a841:0:0:0:0 with SMTP id d1csp3007852pxy; Sun, 25 Apr 2021 10:50:24 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxDNkvj+qaSjfOKYPKSQzvE/unRTetbb+68bERgOR0Kh7G0Hde0qfl8vBswIe0U8FOx7G08 X-Received: by 2002:a62:808b:0:b029:252:eddc:afb0 with SMTP id j133-20020a62808b0000b0290252eddcafb0mr14215165pfd.41.1619373023916; Sun, 25 Apr 2021 10:50:23 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1619373023; cv=none; d=google.com; s=arc-20160816; b=Me/56R3dnlE/OZiogeYiwOmn2Qyo57KSoeyX8INOOgf+Qb9DQRlM+rH5eBE2zKOU5D 2anz+twuy2Jy12iBTPoUrHfMZ1bSrML5tWqy+Yj/wFKftBt3/17JbY4i5S7fBPWIs8a7 acYIKoKlYDXj3E1/Sc5/d17s4h1YCWjMRyNCA6hb/CefdwYtUgFh/7tEzfhmXAQFvHdk PcVWhMh5sZ2F2BoKbSRUaxkuu8e6EitD9ciSwuDpATdQ0zjrYnDffyLkkGFobM1c7VKU z3MRWDkF/QDx/31KLbYJOL4dlp/jPN6j3RUQiMjJ6F6TQgjjot19BCPmVgNSMwXb102C IbHg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from; bh=XPLSoZ/tcqePUCSPTFPBT43x+MShOvw/eATV++A32uY=; b=AZ6od2mXiaZF90QULWhZPv2toHKY6mc0RKloaYJg4uhqKzbcOKFgt7onQWuhDntx+E ugPQSrDzHl6R8X/xDkwMloKOE/mr9dEHE3wJO+UQC1cKSsWgaxAILxNrLvrh6bOhZqRE 18jmXctHfSCad5CK1VmyZpc3Aiv3NiUwP+hrfzQgTYlEAWqLbAZKM8Wq2gGukEdDm+XJ Hfjy27GQEHWQ/ISUsZpSXiHwuhHuFj3IV/zw5v2CUkBEc4+VeFVGMrUu4fPq0+1qOl3Y SEOTCE6CWb8MEqXofMLtO9yRvOJf190O33NLGWErea322pL/vzXjktTV6ujdkkw7kamc hXhQ== 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=fail (p=NONE sp=NONE dis=NONE) header.from=canonical.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id x6si15127265plm.309.2021.04.25.10.50.11; Sun, 25 Apr 2021 10:50:23 -0700 (PDT) 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=fail (p=NONE sp=NONE dis=NONE) header.from=canonical.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231184AbhDYRtS (ORCPT + 99 others); Sun, 25 Apr 2021 13:49:18 -0400 Received: from youngberry.canonical.com ([91.189.89.112]:51445 "EHLO youngberry.canonical.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230359AbhDYRtR (ORCPT ); Sun, 25 Apr 2021 13:49:17 -0400 Received: from mail-ed1-f71.google.com ([209.85.208.71]) by youngberry.canonical.com with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.86_2) (envelope-from ) id 1lais0-0005D3-QS for linux-kernel@vger.kernel.org; Sun, 25 Apr 2021 17:48:36 +0000 Received: by mail-ed1-f71.google.com with SMTP id v5-20020a0564023485b029037ff13253bcso21696253edc.3 for ; Sun, 25 Apr 2021 10:48:36 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=XPLSoZ/tcqePUCSPTFPBT43x+MShOvw/eATV++A32uY=; b=LKQW63D6Ffah0JRqAPh8MoEqp8ypeNYudavZfLh+snJjfMUtwhcAOPr7jS0xoGlTs6 /SsfkKkkYxSJ0mv71omDrn6qmHU3eW6LBL5sOqeUfOYU/UeYf0Y3StD/uBsjhV172vgw kZLAzUNtRflafGL0naVGbCGNSSfcBLOPl1bdP1vqNDIKaiCzq5HdpRie13UsXMppEtcJ W0blE+4x02kKz16DLdiYPTQHXpoYSTYwf88UR+MpQFazg7O3HPM4CJMaSTJVu4YekYH/ OiS4ixoTGmhbKYp0kKlL0rO39AzuWaXaEUfgf1W9eivPGgwHmdiLk9lZtt1/Ziq9DQ3D HQPg== X-Gm-Message-State: AOAM531pMEW58wL9juhsPEk9GLDKX46N1dBE75SkYYj+TW7nLQLjhmxN alDno+BusX+9E3kAAvoajBSt7/zxAEqUfC5OxtlJRnv/DJaYTYhnFjSJjSG0OQrWP+8CC4UkBnQ WcRogmfiqKyFZHSJMMNt60A4pBA2goIanXSOaYHX5Ew== X-Received: by 2002:a17:907:1c01:: with SMTP id nc1mr14535247ejc.283.1619372915989; Sun, 25 Apr 2021 10:48:35 -0700 (PDT) X-Received: by 2002:a17:907:1c01:: with SMTP id nc1mr14535230ejc.283.1619372915860; Sun, 25 Apr 2021 10:48:35 -0700 (PDT) Received: from localhost.localdomain (xdsl-188-155-180-75.adslplus.ch. [188.155.180.75]) by smtp.gmail.com with ESMTPSA id c12sm10306849eja.12.2021.04.25.10.48.34 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 25 Apr 2021 10:48:35 -0700 (PDT) From: Krzysztof Kozlowski To: Zhang Rui , Daniel Lezcano , Amit Kucheria , Shawn Guo , Sascha Hauer , Pengutronix Kernel Team , Fabio Estevam , NXP Linux Team , Orson Zhai , Baolin Wang , Chunyan Zhang , linux-pm@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Cc: Krzysztof Kozlowski Subject: [PATCH 2/2] thermal: sprd: add missing of_node_put for loop iteration Date: Sun, 25 Apr 2021 19:48:31 +0200 Message-Id: <20210425174831.164332-2-krzysztof.kozlowski@canonical.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20210425174831.164332-1-krzysztof.kozlowski@canonical.com> References: <20210425174831.164332-1-krzysztof.kozlowski@canonical.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Early exits from for_each_available_child_of_node() should decrement the node reference counter. Reported by Coccinelle: drivers/thermal/sprd_thermal.c:387:1-23: WARNING: Function "for_each_child_of_node" should have of_node_put() before goto around lines 391. Signed-off-by: Krzysztof Kozlowski --- drivers/thermal/sprd_thermal.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/drivers/thermal/sprd_thermal.c b/drivers/thermal/sprd_thermal.c index 3682edb2f466..2778971aaf03 100644 --- a/drivers/thermal/sprd_thermal.c +++ b/drivers/thermal/sprd_thermal.c @@ -388,6 +388,7 @@ static int sprd_thm_probe(struct platform_device *pdev) sen = devm_kzalloc(&pdev->dev, sizeof(*sen), GFP_KERNEL); if (!sen) { ret = -ENOMEM; + of_node_put(sen_child); goto disable_clk; } @@ -397,12 +398,14 @@ static int sprd_thm_probe(struct platform_device *pdev) ret = of_property_read_u32(sen_child, "reg", &sen->id); if (ret) { dev_err(&pdev->dev, "get sensor reg failed"); + of_node_put(sen_child); goto disable_clk; } ret = sprd_thm_sensor_calibration(sen_child, thm, sen); if (ret) { dev_err(&pdev->dev, "efuse cal analysis failed"); + of_node_put(sen_child); goto disable_clk; } @@ -416,6 +419,7 @@ static int sprd_thm_probe(struct platform_device *pdev) dev_err(&pdev->dev, "register thermal zone failed %d\n", sen->id); ret = PTR_ERR(sen->tzd); + of_node_put(sen_child); goto disable_clk; } -- 2.25.1