From nobody Thu Sep 11 23:32:33 2025 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 56514C04E69 for ; Tue, 8 Aug 2023 20:42:56 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233460AbjHHUmw (ORCPT ); Tue, 8 Aug 2023 16:42:52 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:58584 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234353AbjHHUmE (ORCPT ); Tue, 8 Aug 2023 16:42:04 -0400 Received: from szxga02-in.huawei.com (szxga02-in.huawei.com [45.249.212.188]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id B4FEE7A99 for ; Tue, 8 Aug 2023 10:31:21 -0700 (PDT) Received: from dggpemm100010.china.huawei.com (unknown [172.30.72.54]) by szxga02-in.huawei.com (SkyGuard) with ESMTP id 4RKt503fjbzNmtq; Tue, 8 Aug 2023 20:37:56 +0800 (CST) Received: from dggpemm500007.china.huawei.com (7.185.36.183) by dggpemm100010.china.huawei.com (7.185.36.24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 8 Aug 2023 20:41:24 +0800 Received: from huawei.com (10.175.103.91) by dggpemm500007.china.huawei.com (7.185.36.183) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 8 Aug 2023 20:41:24 +0800 From: Yang Yingliang To: CC: , , Subject: [PATCH -next] uio: pruss: fix missing iounmap() in pruss_probe() Date: Tue, 8 Aug 2023 20:38:27 +0800 Message-ID: <20230808123827.560603-1-yangyingliang@huawei.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Originating-IP: [10.175.103.91] X-ClientProxiedBy: dggems704-chm.china.huawei.com (10.3.19.181) To dggpemm500007.china.huawei.com (7.185.36.183) X-CFilter-Loop: Reflected Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" platform_get_irq() is called after ioremap(), if it fails, iounmap() needs be called in error the path. Fixes: 2fd84b9b839c ("uio: pruss: fix to check return value of platform_get= _irq() in pruss_probe()") Signed-off-by: Yang Yingliang --- drivers/uio/uio_pruss.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/uio/uio_pruss.c b/drivers/uio/uio_pruss.c index 122c38e2fbbd..77e2dc404885 100644 --- a/drivers/uio/uio_pruss.c +++ b/drivers/uio/uio_pruss.c @@ -177,7 +177,7 @@ static int pruss_probe(struct platform_device *pdev) =20 ret =3D platform_get_irq(pdev, 0); if (ret < 0) - goto err_free_ddr_vaddr; + goto err_unmap; =20 gdev->hostirq_start =3D ret; gdev->pintc_base =3D pdata->pintc_base; @@ -215,6 +215,7 @@ static int pruss_probe(struct platform_device *pdev) for (i =3D 0, p =3D gdev->info; i < cnt; i++, p++) { uio_unregister_device(p); } +err_unmap: iounmap(gdev->prussio_vaddr); err_free_ddr_vaddr: dma_free_coherent(dev, extram_pool_sz, gdev->ddr_vaddr, --=20 2.25.1