Received: by 2002:a6b:fb09:0:0:0:0:0 with SMTP id h9csp3556838iog; Mon, 27 Jun 2022 19:56:08 -0700 (PDT) X-Google-Smtp-Source: AGRyM1vvEtMolC8a7po4wlZLzFoK3kD66W3aVX4N0Dla+KvcWA4S4uCsvgRcglhVHe4Yz1O6+XPg X-Received: by 2002:a17:906:b750:b0:726:3100:7991 with SMTP id fx16-20020a170906b75000b0072631007991mr15938285ejb.459.1656384968003; Mon, 27 Jun 2022 19:56:08 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1656384967; cv=none; d=google.com; s=arc-20160816; b=ev0jxuJiRbpx2+J+OGI+xEhbtv/ZoAD+l7VYWM/0e3SeJnWCgKrf2Q7TiD4wBDEJ1g k4S7vazU6SyjDzy1dp3j06y0o8/0edObNCJOM9+WGNOocP5nlAsfGbnsryBWzhkryvhl fhDH+6p70fXdRh/K9dNKe96YyF5RG+youM0fyFpjVGe/avYPywM8zgDpD6YP/X6KOfMu n8OJvKMnWu2zGi9YR+Fmwsb5B19giqryZe0wB8gzxNg2LoF9c11fymHQ52aQ8SyfCLXk 1YU2VoRdZiywiId65C8StK58yVb/qkAiENeK19UtxeAFZeo3WqG40OeO7haBtpsRXN7B doDg== 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 :message-id:date:subject:cc:to:from:dkim-signature; bh=4TMOalaagtufXqneCE0TjllSga3ga0jXdfSKQ7YOa4M=; b=OXp3pQt1nVpLP3ve3O+YB4/KSHyeQPPKZm0mg/TTgAzAxFyIs0GPdqst2d8vDZxpwi vbklKPmZep2DLbnTEjIsd8zZV7FFbTDbvr9corsXAWbf5o74qyG+eu862sccf1d3t9Y9 IK5yQai/ns87soMJelAn7THDOIdllP00g1TiPAX5ldOVm7WJBukj2U4yRrNx+8xHUPFJ mE30IbbtNMoFJYxyXbInw9hG2J4DAt2Jr9o51YYBeZ4pWNM92kCOI1PpM+phX28aBMz3 DNM6ODCdiw3paehHLFdHIW9OEU+Dr3kIlWw12D2GeWMf6SgiUVxazgjsqXnbZq0KGj1s b1sw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@126.com header.s=s110527 header.b=ULkMJZxb; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=126.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id jg12-20020a170907970c00b006fefef9abd2si470618ejc.366.2022.06.27.19.55.43; Mon, 27 Jun 2022 19:56:07 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@126.com header.s=s110527 header.b=ULkMJZxb; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=126.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S241791AbiF1CRI (ORCPT + 99 others); Mon, 27 Jun 2022 22:17:08 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:57734 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S235529AbiF1CRH (ORCPT ); Mon, 27 Jun 2022 22:17:07 -0400 Received: from mail-m964.mail.126.com (mail-m964.mail.126.com [123.126.96.4]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id B8DEB22BF8 for ; Mon, 27 Jun 2022 19:17:05 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=126.com; s=s110527; h=From:Subject:Date:Message-Id:MIME-Version; bh=4TMOa laagtufXqneCE0TjllSga3ga0jXdfSKQ7YOa4M=; b=ULkMJZxbSLVoAmV6tHV4k 6a1eJBt3JtOb6GtDfk1A5AiaNWST+2c3diBecX4Pa0orCsoS3TH1C7vlK6PZugcI JTs1objZB3s2CAcrDYq4mP5Lofey6DaIq9FyNmE1P2hXGeDXWH9OSQCImrdE/Q4X DB8/UP2SHSzCBJwxoDRmaE= Received: from localhost.localdomain (unknown [124.16.139.61]) by smtp9 (Coremail) with SMTP id NeRpCgAHFbqJZLpi7Z+LFg--.557S2; Tue, 28 Jun 2022 10:16:42 +0800 (CST) From: Liang He To: broonie@kernel.org, gregkh@linuxfoundation.org, ckeepax@opensource.cirrus.com, michal.simek@xilinx.com, abhyuday.godhasara@xilinx.com, simont@opensource.cirrus.com, ronak.jain@xilinx.com, peng.fan@nxp.com, linux-kernel@vger.kernel.org Cc: windhl@126.com Subject: [PATCH v2] firmware: Hold a reference for of_find_compatible_node() Date: Tue, 28 Jun 2022 10:16:40 +0800 Message-Id: <20220628021640.4015-1-windhl@126.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-CM-TRANSID: NeRpCgAHFbqJZLpi7Z+LFg--.557S2 X-Coremail-Antispam: 1Uf129KBjvJXoW7uF43urW3Cw1xGr1DAFWfAFb_yoW8Gw18pF n5uFWrAFWxX3s7Ary8CF4fZFySgF4rKF4UGryUWwn7tr1DJF1ktFW2qrWYyF1vvFW8Cr15 WF9Fgw4jga4IyrJanT9S1TB71UUUUUUqnTZGkaVYY2UrUUUUjbIjqfuFe4nvWSU5nxnvy2 9KBjDUYxBIdaVFxhVjvjDU0xZFpf9x0ziF1vfUUUUU= X-Originating-IP: [124.16.139.61] X-CM-SenderInfo: hzlqvxbo6rjloofrz/1tbizgouF18RPY7kSAAAss X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM, RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org In of_register_trusted_foundations(), we need to hold the reference returned by of_find_compatible_node() and then use it to call of_node_put() for refcount balance. Signed-off-by: Liang He --- v2: use 'check-and-put' coding style v1: hold ref returned by of_find_xxx v1 link: https://lore.kernel.org/all/20220621032625.4078445-1-windhl@126.com/ include/linux/firmware/trusted_foundations.h | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/include/linux/firmware/trusted_foundations.h b/include/linux/firmware/trusted_foundations.h index be5984bda592..931b6c5c72df 100644 --- a/include/linux/firmware/trusted_foundations.h +++ b/include/linux/firmware/trusted_foundations.h @@ -71,12 +71,16 @@ static inline void register_trusted_foundations( static inline void of_register_trusted_foundations(void) { + struct device_node *np = of_find_compatible_node(NULL, NULL, "tlm,trusted-foundations"); + + if (!np) + return; + of_node_put(np); /* * If we find the target should enable TF but does not support it, * fail as the system won't be able to do much anyway */ - if (of_find_compatible_node(NULL, NULL, "tlm,trusted-foundations")) - register_trusted_foundations(NULL); + register_trusted_foundations(NULL); } static inline bool trusted_foundations_registered(void) -- 2.25.1