From nobody Tue Jun 9 00:59:03 2026 Received: from mail-qk1-f179.google.com (mail-qk1-f179.google.com [209.85.222.179]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id EBC5928E0 for ; Mon, 25 May 2026 04:02:07 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.222.179 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779681729; cv=none; b=grkbhMrO4JtkL9zECyUVt3y9QUQ+r+FDTUU2mZNYFb+G5ESNI43X5TIYe8s6XjDbqTss0gowaEeivZwRiLmg4oBdnckEq9arZ0KlDVZxR9H+dtQfeTFUPFWjAaEZBLpTVEB9pxbf/iTefLDMLddlQDXaZHLsPYtZNODUWNiIvvg= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779681729; c=relaxed/simple; bh=/D5NZ6KbFz6bFcRqmdFVflWEHxzCWb3xE5mBn3KXKsg=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=HhTh0iXIpdbxNJI2DLH3AoNnb/xQkK/qReF7aIOya86D/2HmMVYngCPipo/yVd2p9/hdy1OP02WMw1muI2Pp1LYQllG/XiQV2P+xlSQ1HJ72FSrZehOrdSzCM9JpLuVvxFyebXQ19WtN+NIiXXVBY9uBAGLJCVzjTRJ8jYDbur8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=g9315OzH; arc=none smtp.client-ip=209.85.222.179 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="g9315OzH" Received: by mail-qk1-f179.google.com with SMTP id af79cd13be357-914bbfc2464so206088985a.1 for ; Sun, 24 May 2026 21:02:07 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1779681727; x=1780286527; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=8FWl0UxFX5GgB8gGa6HOaMa+f55DN13yqthzkeUsMYA=; b=g9315OzHelOsU+iNbyRtgHXqw4m5ipQ6RSbioKoBSNf1g3+gArVRxDwBeSRryuopAM G6tKiumOjQjSGBhVqm7D6GPdyDOMHMNzWm9ho46xYuDjOp5GSPYJJNy8rM/z1iPT4V1O ukPVsvHEjsSuRbDOkBvWmWjn5ibWVYQYtPexgXAbaHoxzlYe4nu8Ayxna2ZORsDQZn/N Yo6zwFYvr79+u8iK5SndGXwftPQzujgSCIUX1i7aHOkS80dJ38ec73DM0loLB0fWicFG 58pbAtjNFlzy6KlNrJ45nLcvx0YwDHfkaAXnNm+o3kNZMHv2etyw+AF9mO7S14/qfL7l QU6g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1779681727; x=1780286527; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=8FWl0UxFX5GgB8gGa6HOaMa+f55DN13yqthzkeUsMYA=; b=h08bHGyfgtfTox6X8lIWsKt5joMvpk5C8+3lmku/d5FKfnuIZzRMAyFqPEbFi77y2R knlvKryEklVR7xPaC0Cgb1HbZ7PbYkYJaggK6W3LhRBHGlzqo5qN2thjeOJhLd6eEVA8 75VxwKQqX3c2mOND14/9vx0cKAlsz+4CiJtW/7DukZ3I2Mq/A5MSI+o87wcwU/qOrZiY VhZf2bYZkwRN60ou2N5JAbRmmh27N6xIrvQJGYojD3MaaALp+kiXtkdKXvkdtQPWDNGW oAl679lG6MexoJfedhZ/J3Ax5gf5ex2pF9OvUQXBqsFbPHmXvsxbo2DVr2vwo31mR/4u y6Gw== X-Forwarded-Encrypted: i=1; AFNElJ9IyQLKHTuqNBK8xajLOkV2Fi7dQE5BEcts7Bhu1u4np8VGE4g0bCpm1FgBtioT2UsCqy/pw9DRatVCQ1k=@vger.kernel.org X-Gm-Message-State: AOJu0Yy0/bVjKjGCYdiMd0gxsSekW/ZTFBgJ3bXPf+inifuBiuigYlcy t62bgdkpYpBf43VUYpFMRz9SDwQuGogpvIXWQC6vLJ6YCkqTMo/OG8Gx X-Gm-Gg: Acq92OGXQG/EL3gJEilQc8O1QUBEb32ZrbpGpUyy3DmBHKPqktOj6Es8wDfitAoGexI YQ6NhrUVVUnujSZDVtrPtX6cGem+EJ67xsBXwS7I+x0RjnNCQMYfRB7/PHBd48ueic5DxEMMlZo xxYDTCGPM76sx/8I37v/y4g5dBcQpLCS2taK/cwTCBq/tZ/JA0mlf86OGam7demY8cFK//XOLY4 68v3UZl3F6AI+DNn2Q0kAxSCrNhoNNtNMU9c0XIi3FGevQGyHxp1BXz4mDiKt8iyyZHViHeK7Nv e7EB3No8g+Y8hHKX5kkWK8D5s8snjYrOaBT9ldRkJO38FD6nqEup2kGj5jU0QaEUw1u5/OpitYr H/hGRXLJHcSIbyOoKIkZZDxKJjBQ3wv8GvdCsAAySqD3v5wNg3T4aKewBdfcFSosLy5DrA1vbFk Ovw/Svjacdf2fh9MYh4R0a7VSFGPG8dRWuaIMuKDEeEfRux21RraQ= X-Received: by 2002:a05:620a:2718:b0:914:c0e8:224 with SMTP id af79cd13be357-914c0e80a72mr1628896885a.54.1779681726843; Sun, 24 May 2026 21:02:06 -0700 (PDT) Received: from i4-gl-tmk5904.ad.psu.edu ([130.203.156.186]) by smtp.gmail.com with ESMTPSA id af79cd13be357-914bba0b6c8sm886659285a.41.2026.05.24.21.02.05 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 24 May 2026 21:02:06 -0700 (PDT) From: Yuho Choi To: Frank Li , Sascha Hauer Cc: Russell King , Pengutronix Kernel Team , Fabio Estevam , linux-arm-kernel@lists.infradead.org, imx@lists.linux.dev, linux-kernel@vger.kernel.org, Yuho Choi Subject: [PATCH v1] ARM: imx31: Fix IIM mapping leak in revision check Date: Mon, 25 May 2026 00:01:58 -0400 Message-ID: <20260525040158.1352069-1-dbgh9129@gmail.com> X-Mailer: git-send-email 2.43.0 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" mx31_read_cpu_rev() maps the IIM registers with of_iomap() to read the silicon revision, but returns without unmapping the MMIO mapping. Keep the normalized revision value in a local variable and route the return path through iounmap() after the revision register has been read. Fixes: 3172225d45bd ("ARM: imx31: Retrieve the IIM base address from device= tree") Signed-off-by: Yuho Choi --- arch/arm/mach-imx/cpu-imx31.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/arch/arm/mach-imx/cpu-imx31.c b/arch/arm/mach-imx/cpu-imx31.c index 35c544924e50..e81ef9e36a1f 100644 --- a/arch/arm/mach-imx/cpu-imx31.c +++ b/arch/arm/mach-imx/cpu-imx31.c @@ -36,6 +36,7 @@ static int mx31_read_cpu_rev(void) void __iomem *iim_base; struct device_node *np; u32 i, srev; + int rev =3D IMX_CHIP_REVISION_UNKNOWN; =20 np =3D of_find_compatible_node(NULL, NULL, "fsl,imx31-iim"); iim_base =3D of_iomap(np, 0); @@ -48,13 +49,17 @@ static int mx31_read_cpu_rev(void) =20 for (i =3D 0; i < ARRAY_SIZE(mx31_cpu_type); i++) if (srev =3D=3D mx31_cpu_type[i].srev) { + rev =3D mx31_cpu_type[i].rev; imx_print_silicon_rev(mx31_cpu_type[i].name, mx31_cpu_type[i].rev); - return mx31_cpu_type[i].rev; + goto out; } =20 imx_print_silicon_rev("i.MX31", IMX_CHIP_REVISION_UNKNOWN); - return IMX_CHIP_REVISION_UNKNOWN; + +out: + iounmap(iim_base); + return rev; } =20 int mx31_revision(void) --=20 2.43.0