Received: by 2002:a05:6a10:6d25:0:0:0:0 with SMTP id gq37csp322357pxb; Sat, 11 Sep 2021 06:15:27 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxecZCtc8YqFifYfOeXLnF/Fcw0KQuSd+8+/gsc2YCflelqTDSPHsiIjl0mOiymv/4THm27 X-Received: by 2002:a17:906:49d5:: with SMTP id w21mr2939353ejv.30.1631366127563; Sat, 11 Sep 2021 06:15:27 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1631366127; cv=none; d=google.com; s=arc-20160816; b=YuZy2hN9EIw/zkct79cv9tBudsuOuy8WAfqh1E7SW0THRJV7vLg/e7yAZu5du66hry hc/KFZW1AtELJNMElwvVdzY8YgNhYXsf4okSrEgpksiR9zAQTS2+nyCkQfxurGR2UMlw zjUmW6v2zdXf1G4JcCBHe6FKCMEhEZ2vUuuHGk0cVbJrsECRgJYn4F9eoptWhYJctBJ2 xcjro5rnRu+j1A4GZKrAmt78JIRnCIaRQjv4q8v46hbIpEZwbFvHrm9dfM+EN8rpLji8 cUgIlixbapoifEKPL/24NK0hv9abxKV1EWmFBUehKNNPi8g6NJieK1q2s9bXZFYR6lMb KZmQ== 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 :dkim-signature; bh=QiFySL/3u7NSxJ45g1tNpfLVjmx25AbmOqCiTYauxKY=; b=ARJ8cQ+mu5r6HS/lVCFZ79ZDFceg7z9TtMN0RdYAq7/I9+3gITLzuPSwi7ejS2El7w JViiJS8G4vJYDGlRukG/hhIs7qkwm2AOEkGnfAIGVs2m6WnW9Ds3l6qL3KdqDOo1Jv26 zY2brLl8ot2PvZvWYX9mxyCT6uSZqbfSk0EamqM2ShnbjQ/aJaKOzKjRiYl3y8zxMy9T AYCvU1foGoR8ERQPmVD0w7hwJ8XLHkibzh/4EJ/5k2lUkua+5dEdEsJknlCABovaA4X2 /OkxXzSHAnaCxmuZTAqp1fZNGd+0MlgKi/n3XyizjMtDzQR/nZIUNq11XobHp6zk/8R5 NiNw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=ln+F5Qq6; 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 qk32si1732343ejc.468.2021.09.11.06.15.03; Sat, 11 Sep 2021 06:15:27 -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; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=ln+F5Qq6; 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 S236007AbhIKNNT (ORCPT + 99 others); Sat, 11 Sep 2021 09:13:19 -0400 Received: from mail.kernel.org ([198.145.29.99]:36940 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S235934AbhIKNNN (ORCPT ); Sat, 11 Sep 2021 09:13:13 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id 17404611C3; Sat, 11 Sep 2021 13:12:00 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1631365920; bh=mv/mgaHOnkOGkztlyC9ZkuUY8ikq0GtV8Y8kFRFjK9Q=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=ln+F5Qq6bsKUFO2CZ1TIUztKQ2gPBgKG6nPvAji88Kz2kXTaMjC4Ldiipaxf5o1qo X0kGp1cOTVjcWxjbxI5YKRLO9zgTnFZgXqkiifhJXnukmia+JfxtlqPRAeQ0Sb9dbB okxHMdyDa1JUHrH7RBUjF+SGSCeSgUtTFlfcNvYpQ8FXSWia7edoHQFAaaSnAwbuB7 wKnzmBzm+Z53yYdFssRiQp4WgdSZcKiNIQn0HnBkP2+WQOPFyugigo2+R66ARDg1Hm u5OpK9LA9ZLO7o+8S52Z45N7bRMWrOWoemUzwW8AV5DMJpUlsSZ0aNmdVj6NqP02R2 O8qJUmgmlf8Dw== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Christophe JAILLET , Lorenzo Pieralisi , Vidya Sagar , Sasha Levin , linux-tegra@vger.kernel.org, linux-pci@vger.kernel.org Subject: [PATCH AUTOSEL 5.14 08/32] PCI: tegra: Fix OF node reference leak Date: Sat, 11 Sep 2021 09:11:25 -0400 Message-Id: <20210911131149.284397-8-sashal@kernel.org> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20210911131149.284397-1-sashal@kernel.org> References: <20210911131149.284397-1-sashal@kernel.org> MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Christophe JAILLET [ Upstream commit eff21f5da308265678e7e59821795e606f3e560f ] Commit 9e38e690ace3 ("PCI: tegra: Fix OF node reference leak") has fixed some node reference leaks in this function but missed some of them. In fact, having 'port' referenced in the 'rp' structure is not enough to prevent the leak, until 'rp' is actually added in the 'pcie->ports' list. Add the missing 'goto err_node_put' accordingly. Link: https://lore.kernel.org/r/55b11e9a7fa2987fbc0869d68ae59888954d65e2.1620148539.git.christophe.jaillet@wanadoo.fr Signed-off-by: Christophe JAILLET Signed-off-by: Lorenzo Pieralisi Reviewed-by: Vidya Sagar Signed-off-by: Sasha Levin --- drivers/pci/controller/pci-tegra.c | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/drivers/pci/controller/pci-tegra.c b/drivers/pci/controller/pci-tegra.c index c979229a6d0d..b358212d71ab 100644 --- a/drivers/pci/controller/pci-tegra.c +++ b/drivers/pci/controller/pci-tegra.c @@ -2193,13 +2193,15 @@ static int tegra_pcie_parse_dt(struct tegra_pcie *pcie) rp->np = port; rp->base = devm_pci_remap_cfg_resource(dev, &rp->regs); - if (IS_ERR(rp->base)) - return PTR_ERR(rp->base); + if (IS_ERR(rp->base)) { + err = PTR_ERR(rp->base); + goto err_node_put; + } label = devm_kasprintf(dev, GFP_KERNEL, "pex-reset-%u", index); if (!label) { - dev_err(dev, "failed to create reset GPIO label\n"); - return -ENOMEM; + err = -ENOMEM; + goto err_node_put; } /* @@ -2217,7 +2219,8 @@ static int tegra_pcie_parse_dt(struct tegra_pcie *pcie) } else { dev_err(dev, "failed to get reset GPIO: %ld\n", PTR_ERR(rp->reset_gpio)); - return PTR_ERR(rp->reset_gpio); + err = PTR_ERR(rp->reset_gpio); + goto err_node_put; } } -- 2.30.2