From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pl1-f181.google.com (mail-pl1-f181.google.com [209.85.214.181]) (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 DA53936A341 for ; Wed, 10 Jun 2026 05:06:48 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.181 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1781068010; cv=none; b=rn/RWWCzAFu6eZ3zYF9yLDHukTK16wF/nbUN17Nz3WhW8+MY75Cguc6nrQ8j70r1LgXkL2aCt+4UiiFKXIcCJAPGukYVHHmexOGM9137/Am4zxZ08g4lU6CofRSEfbhXIFbEG6dFtJ8nY7OjdjaxUitIK8BZFBEzT1m+enQYJbs= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1781068010; c=relaxed/simple; bh=A/HTXbbqkzZmaVzp0DgOiTcXejyaFLmWn1tf0ouzoSU=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=K1DC6h2md8ts5neK5QwAlc8epxq4kC4mxhF7q/MhZCLffCy1vYz6PJEbFWkioD5+vAptr2BHQ0avnvLUd/UAiLcKwoSwjZ+tWaTSOmeGzNBz81OfI4ZI7Eo8FYwtjWTVbWa+ebn0IlHo8Cmr6z1y4hySki7C9KuJeR3HYXDGI2U= 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=ATG7fKwk; arc=none smtp.client-ip=209.85.214.181 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="ATG7fKwk" Received: by mail-pl1-f181.google.com with SMTP id d9443c01a7336-2c0c3184c71so48780485ad.1 for ; Tue, 09 Jun 2026 22:06:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1781068007; x=1781672807; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=HvI5XrhZFZI6TMOTvbNxHG6jHvhhtOJVngky48pbbec=; b=ATG7fKwkJQKohf+GZW0RNoLP1LLR9uOGl/fh4N0/UKoLca6D6LcJKTrbmBeM6vxLa6 FuAtTeHsNIHpkQeJm0sHJfYLrI+aVTzp+Q+cUDEaZEMKyuwrvqijd+IPfnKtNev2rKY0 25vjtU5r+F6syR60ZnG90YXznyBm8I8lkHLugliqoCLdXjuyC7SlcgxBX6+EbnkxxWQl vt8TDeZ4PQsrcf11HwnV3PW92219fsFl9YUz7ickfyJ3Mr5+SotCzLxZSNxeZbyO6NCf XuefzqY0vUAUoGKQPDPgRPKkMuu6Sxo+oHtjVRlwUnr0kUv5KJWNcK32ZIm6TShvF5Dd baDQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1781068007; x=1781672807; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=HvI5XrhZFZI6TMOTvbNxHG6jHvhhtOJVngky48pbbec=; b=j/ucZsRV4c+ZWSyGrI8wBLUYNBepaP7syuvT754f8h0PmUHvN9PtOT2CPG4EhpJ/sC fMtL+mn/l09wysJtliY6Sjp2L1dNBctPI/K0zvnTwn+ZtmF4/7gyxkjyVTbB9wsYwqYm tg7Hvbb94oIfSotaCbH4SzYM+eOv/l94T3zzTqgzRwXQOjxcQItihrdQx/GGgVR7d9Aw HVCOLoP7ehT+tTvEPAdnUlSDHAQdzRSp689qGRkhPsxMXGTSam/DmulLzn4kkS9Na30s QHT2ieTY7be1RKFk68VcLtq9cEZveuli0gq08/d2w0J+44fshUHmxjnnuIAdH3KGbtnx baow== X-Forwarded-Encrypted: i=1; AFNElJ/KlXrwj1oFMyZIi94VS/9owOo02rBv81CcvKpcJOd8W+3qb0XOfzlCwqsWova5aU1C2xlHxeTCvkeTVtA=@vger.kernel.org X-Gm-Message-State: AOJu0YxYDOc4tmB+LdchRD9h1SDORRJCwb8WGPtTgr73k4LQVj5CM+CD UjP49VUD/psQRR3TeK5/WB5UIc+R+blEazwmi1JbxRJes1rlHJK8v04C X-Gm-Gg: Acq92OFPPw4WSg2G/hpZiawcEe9jpzLKNmBzxh5+D5TG6QggTX34mHMo7NqiaJpYzP/ Hfnmzn+PXfyvhhdoWuzpQ2w884DN/+3aiTnXDKAuHlQIzIGRn7En0PKAIG9C0Py9wDNu9adDFm9 8GT+2egInRz6KDR3f+E3XZLdmBXa/I2MY/4ry3ln3RnJAaX3O1a8NCIwef4boUJrDHfgHDliWaA 1c2KeHF8dX2Zl+c1rn2WEp+g9YAOikVw1Nfr7ZN10FYIHJHCuQ4Oh/BQDi4y3rV5js4a0RmnB6N WC4Ttytfy2U9rcR6Bu+zrggVWNInWry/6JZuX1QRVsRJC2y/TYQL+8vxV+ONRs+jYFvINSAZsXv mMG0L1cGu6nTOVikdvIfewpIAococt3n5x3LRSJMy2VVHSsekVV8BVzGKIE+MPwMdYuyF8YwNrB RGQYOvV89UlQYND5Hlre+1UBtwOP6cG/BT4ai+o9ya+ZhEpoYsp65AY/U8z2ovRXh4PzBOuy0Fo 6emRem5/RbOqybFWSeGDpL/Hqxg/6avKqahRMxjo4oOOEUCW3Tz6w== X-Received: by 2002:a17:902:f543:b0:2c2:27be:39a3 with SMTP id d9443c01a7336-2c227be3b4fmr200649235ad.29.1781068007320; Tue, 09 Jun 2026 22:06:47 -0700 (PDT) Received: from localhost.localdomain (n49-176-80-106.mas22.nsw.optusnet.com.au. [49.176.80.106]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-2c164f6e2adsm245342055ad.5.2026.06.09.22.06.43 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 09 Jun 2026 22:06:46 -0700 (PDT) From: Weigang He To: Shawn Guo Cc: Sascha Hauer , Pengutronix Kernel Team , Fabio Estevam , imx@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Weigang He Subject: [PATCH 1/2] ARM: imx: fix device_node refcount leak in imx_src_init() Date: Wed, 10 Jun 2026 15:06:24 +1000 Message-ID: <20260610050625.2229221-2-geoffreyhe2@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260610050625.2229221-1-geoffreyhe2@gmail.com> References: <20260610050625.2229221-1-geoffreyhe2@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit imx_src_init() obtains a device_node reference via of_find_compatible_node() matching "fsl,imx51-src" and uses it only to call of_iomap(). It never releases that reference: on the success path the function returns at the end without of_node_put(np), leaking one device_node refcount on every boot of an i.MX5/6 platform. Release the reference right after of_iomap(). of_iomap() maps the node's registers but does not retain a reference to the device_node, so the node can be put once the mapping is done. The early return on a NULL np needs no put. Found by static analysis tool CodeQL. Fixes: bd3d924d71a4 ("ARM i.MX5: Add System Reset Controller (SRC) support for i.MX51 and i.MX53") Signed-off-by: Weigang He --- arch/arm/mach-imx/src.c | 1 + 1 file changed, 1 insertion(+) diff --git a/arch/arm/mach-imx/src.c b/arch/arm/mach-imx/src.c index 59a8e8cc44693..f28bfb653a88f 100644 --- a/arch/arm/mach-imx/src.c +++ b/arch/arm/mach-imx/src.c @@ -171,6 +171,7 @@ void __init imx_src_init(void) if (!np) return; src_base = of_iomap(np, 0); + of_node_put(np); WARN_ON(!src_base); /* -- 2.43.0