Received: by 2002:a6b:500f:0:0:0:0:0 with SMTP id e15csp6763001iob; Wed, 11 May 2022 05:01:00 -0700 (PDT) X-Google-Smtp-Source: ABdhPJweMze2I0uRX+hilLkPAdzt9soxMPNZufo81/JFtaOYNgKsaS9PYJ1K5euweZ9H47N4IFpi X-Received: by 2002:a17:907:72c5:b0:6f4:678:8742 with SMTP id du5-20020a17090772c500b006f406788742mr24583710ejc.607.1652270460205; Wed, 11 May 2022 05:01:00 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1652270460; cv=none; d=google.com; s=arc-20160816; b=b0xN6IuSy73GP2S+rdEtV0GLYC7W16YDDBJTLAyVuhj2zprmNcizvwSk4GumTRBefk ttCBnw1MxaYeQaI160/0I81VXUUUQ0Eu7qMuohs0ICbDvBfk4jd6H6/U4TzRmQJJ+lDp 4TIzT+b8OeO2K7SqLlLxdSf5oLoGb1RH9VtSu6PSCje6O1hQC1eJYZp2bljr22wdZ0dM Jlpk2W0iQMANP3wSMkEfmkvFcH//iSafZ4nCn7qFG6CTBRIu73r1y1mfc73Wj2gQh6Pi J9uWBI8a2cb98qc6SFzF0AsD2H+uKE72wufxkETv+TlpJUbR9JbOC3Juko7ITXdVuush S6UA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:content-language :in-reply-to:mime-version:user-agent:date:message-id:organization :from:references:to:subject:dkim-filter; bh=BbId/GXF385wKYEjObYG4MTnEZHVG73eO6z4NaEVhK8=; b=IQKHxDgDxLmnp5M8tFMSN6CVdUD8IxaqB2qiIVPxOk+QwkI/uFIMwZAcVFomszJvgl juIz+kng92pFUi+5cUnUIME1df7Co5P4EwDstawLjMDbArGxmxdIlpwPftU/LFvVDXXJ bmHaRnY/RuCxJ8sXV42i9hC7haRvOMT5rvi+E93hllaCsItst/2iXyvjA9i/eJMhXBYv Q3G0Zz9Mah2ew+Jq3w2zJ4Jwx2Qwl7YEnIjJnPInorC/o40k/j37EPXMHEcmBuogao8V Rlqd2E0InicDmsYPWwEWvIXT1YH+g7zFXZSReO6J3Dpv3FCNB7UXBmUO1nmsPvc71hYa bvHA== ARC-Authentication-Results: i=1; mx.google.com; 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 Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id t20-20020a1709060c5400b006f391c8ce03si1943459ejf.984.2022.05.11.05.00.32; Wed, 11 May 2022 05:01:00 -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; 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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S238626AbiEKLqp (ORCPT + 99 others); Wed, 11 May 2022 07:46:45 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:53554 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230470AbiEKLqn (ORCPT ); Wed, 11 May 2022 07:46:43 -0400 Received: from mxout04.lancloud.ru (mxout04.lancloud.ru [45.84.86.114]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 6C4103CFD0; Wed, 11 May 2022 04:46:41 -0700 (PDT) Received: from LanCloud DKIM-Filter: OpenDKIM Filter v2.11.0 mxout04.lancloud.ru 8B33420CD7A4 Received: from LanCloud Received: from LanCloud Received: from LanCloud Subject: Re: [PATCH] ata: pata_octeon_cf: Fix refcount leak in octeon_cf_probe To: Miaoqian Lin , Damien Le Moal , Jeff Garzik , "David Daney" , , References: <20220511062723.56652-1-linmq006@gmail.com> From: Sergey Shtylyov Organization: Open Mobile Platform Message-ID: <6af08961-0fd9-513f-cb13-0e77529728f2@omp.ru> Date: Wed, 11 May 2022 14:46:38 +0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.10.1 MIME-Version: 1.0 In-Reply-To: <20220511062723.56652-1-linmq006@gmail.com> Content-Type: text/plain; charset="utf-8" Content-Language: en-US Content-Transfer-Encoding: 7bit X-Originating-IP: [192.168.11.198] X-ClientProxiedBy: LFEXT01.lancloud.ru (fd00:f066::141) To LFEX1907.lancloud.ru (fd00:f066::207) X-Spam-Status: No, score=-2.6 required=5.0 tests=BAYES_00,NICE_REPLY_A, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE,UNPARSEABLE_RELAY 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 Hello! On 5/11/22 9:27 AM, Miaoqian Lin wrote: > of_find_device_by_node() takes reference, we should use put_device() > to release it when not need anymore. > Add missing put_device() in error path to avoid refcount > leak. > > Fixes: 43f01da0f279 ("MIPS/OCTEON/ata: Convert pata_octeon_cf.c to use device tree.") > Signed-off-by: Miaoqian Lin > --- > drivers/ata/pata_octeon_cf.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/ata/pata_octeon_cf.c b/drivers/ata/pata_octeon_cf.c > index 6b5ed3046b44..65688459acf1 100644 > --- a/drivers/ata/pata_octeon_cf.c > +++ b/drivers/ata/pata_octeon_cf.c > @@ -857,12 +857,14 @@ static int octeon_cf_probe(struct platform_device *pdev) > res_dma = platform_get_resource(dma_dev, IORESOURCE_MEM, 0); > if (!res_dma) { > of_node_put(dma_node); > + put_device(&dma_dev->dev); > return -EINVAL; > } > cf_port->dma_base = (u64)devm_ioremap(&pdev->dev, res_dma->start, > resource_size(res_dma)); > if (!cf_port->dma_base) { > of_node_put(dma_node); > + put_device(&dma_dev->dev); > return -EINVAL; > } > It seems you forgot to call put_device() at the end of the enclosing *if*, where of_node_put() is also called... MBR, Sergey