Received: by 2002:a05:6a10:206:0:0:0:0 with SMTP id 6csp4370542pxj; Wed, 12 May 2021 04:16:57 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyUPFQQNVDBiTJphznbPDjJuot8CZZnSd0lSdhDulaq1PDxxp2xA98Qnl8exAwMXfojuojG X-Received: by 2002:a17:906:3042:: with SMTP id d2mr37472588ejd.234.1620818217375; Wed, 12 May 2021 04:16:57 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1620818217; cv=none; d=google.com; s=arc-20160816; b=QY9orx8aHx9YUfm6BuD7H1piYrimN9B9jEWd69ESmMilp0amQ2T9dqKslEKDMWQWlK MoyzBMGP/opmtEEtH8hi8woU62wWsRG82qObWWTpBdqpC1Xwc4nTf92NnGCEx7dvO3kv 547wURBga1egBLadK3Kfa31ztjfFbRpp1cYuUjM5lhtJNyRRqdwm40gqpIEmso7jUa19 o8jY4mdvqGgSeva6yrI0N0xnGjSOiKq7qjfoLCG8cpjZgbzi6iBNno8okfqX70laV5Yv 5jp5bdOCxM6zltzzrgog7LIwtrslhdg9LPRea9PAgSusjV9TBBzdHOg6a7Kb1WjeObNa GaQw== 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; bh=gWWMXd/uqMZ9hh4V55JHLeLabDg64PFKJkPZL22X86k=; b=AK/dydQ/g54Lrg4J13c9nogGWNFx59hPCHHx1UlmwXyRYVfPaJu8m7BHlBv4dLybBB k6nUM0rDN0XOjUEDoqyno00JqRGOeaPRRIpPLb5ZGkYv9FdYqJUhCKidAojLwyPiO2iy yWJ2gCki12c0Br5x3StBq6ESLWn0N8DuP/gb+yjvCtnfkyTk+5gYAU341RDofte8Z62g InuxiEHRAErZ7ADtTUJr3P3+csZf2yxaZr80Cx46IdN2XroVw+dye2+YRy4DltqQiqJW AwRgKOiRx4eB3/pHhvcJXwl5e29+Thmh7dMsSIAlkVetaUZng9/szyz7F07GrDQAV3cc FXGQ== 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 Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id v2si4736511ejf.187.2021.05.12.04.16.33; Wed, 12 May 2021 04:16:57 -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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230213AbhELLQm (ORCPT + 99 others); Wed, 12 May 2021 07:16:42 -0400 Received: from smtp03.smtpout.orange.fr ([80.12.242.125]:40137 "EHLO smtp.smtpout.orange.fr" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230139AbhELLQl (ORCPT ); Wed, 12 May 2021 07:16:41 -0400 Received: from localhost.localdomain ([86.243.172.93]) by mwinf5d58 with ME id 3nFX2500W21Fzsu03nFX49; Wed, 12 May 2021 13:15:32 +0200 X-ME-Helo: localhost.localdomain X-ME-Auth: Y2hyaXN0b3BoZS5qYWlsbGV0QHdhbmFkb28uZnI= X-ME-Date: Wed, 12 May 2021 13:15:32 +0200 X-ME-IP: 86.243.172.93 From: Christophe JAILLET To: richardcochran@gmail.com, kuba@kernel.org, jonathan.lemon@gmail.com Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org, kernel-janitors@vger.kernel.org, Christophe JAILLET Subject: [PATCH] ptp: ocp: Fix a resource leak in an error handling path Date: Wed, 12 May 2021 13:15:29 +0200 Message-Id: <141cd7dc7b44385ead176b1d0eb139573b47f110.1620818043.git.christophe.jaillet@wanadoo.fr> X-Mailer: git-send-email 2.30.2 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org If an error occurs after a successful 'pci_ioremap_bar()' call, it must be undone by a corresponding 'pci_iounmap()' call, as already done in the remove function. Fixes: a7e1abad13f3 ("ptp: Add clock driver for the OpenCompute TimeCard.") Signed-off-by: Christophe JAILLET --- drivers/ptp/ptp_ocp.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/ptp/ptp_ocp.c b/drivers/ptp/ptp_ocp.c index 530e5f90095e..0d1034e3ed0f 100644 --- a/drivers/ptp/ptp_ocp.c +++ b/drivers/ptp/ptp_ocp.c @@ -324,7 +324,7 @@ ptp_ocp_probe(struct pci_dev *pdev, const struct pci_device_id *id) if (!bp->base) { dev_err(&pdev->dev, "io_remap bar0\n"); err = -ENOMEM; - goto out; + goto out_release_regions; } bp->reg = bp->base + OCP_REGISTER_OFFSET; bp->tod = bp->base + TOD_REGISTER_OFFSET; @@ -347,6 +347,8 @@ ptp_ocp_probe(struct pci_dev *pdev, const struct pci_device_id *id) return 0; out: + pci_iounmap(pdev, bp->base); +out_release_regions: pci_release_regions(pdev); out_disable: pci_disable_device(pdev); -- 2.30.2