From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-qk1-f169.google.com (mail-qk1-f169.google.com [209.85.222.169]) (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 78BAD2C08BC for ; Fri, 3 Jul 2026 15:50:30 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.222.169 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1783093833; cv=none; b=Qxs3HFSqDcEwURuLhPaTFKyB4NUziJ7tyljyOOaPLLXA0NCX0GuzhP9WThvZiHhoScKeQFJcbAmRPo+N+EnDvLA3fA/s+VKzB8To6MmwtEchxbF8s4V2mhCbXqLUoA4AGG+2dHW1rl0otMwZn1SASd2gjRDKBETpRSOeBrc507A= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1783093833; c=relaxed/simple; bh=QCniDK3MYytm6HoVkF3Jm96RLGunl2RkQqt3P75lZRk=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=qIGXLaONG1hMJv9b6ukJs8VVSUQhJ2zPbqLYji6nSn5TFty0/Ac8jcZOGwY3/HYphXp/9ZFNqvO676jbE1bbZ8vIat13/7Gb/qsjebaCNJKXowmvav0Qn7PUi7UeMswqvfqg6wPM8Mr4hebrLjgMmdNmV1W9ODFCDkbhAkU+R78= 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=Sttu1tSh; arc=none smtp.client-ip=209.85.222.169 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="Sttu1tSh" Received: by mail-qk1-f169.google.com with SMTP id af79cd13be357-9217d13c276so31202885a.1 for ; Fri, 03 Jul 2026 08:50:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1783093829; x=1783698629; 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=w5XX7Rz3Qelo/FGzxIpNIi997ellIca9U5MUALRAgbw=; b=Sttu1tSh0n5omgasvtdjYhbZtGnjfL33dOFZJ/btUWv9R3FuxsLT4kjAnTjHcmm8UF itdRprSOBJUf/Xcmqd34v/H8+RFvWEbMwJqB/JAqrlKq8bg+l08D90HNIeOjudivI0Nk +YishegwsPAoPgsuwB4XZMte+mXI9seTv5t6mfOpTKztzAsE2y+vwb0lKIm42vyJrpr3 9/PtHwJjDwmV7NcsHyx1LYc8jglTpY9T0s/mISIxbzzvNevhBcXijXFfFOYCq36P7MBB jUPcALD3qW4sdoEbhWQDneEoLa64p1OXqjoQVAfqrk1XFrlLbihaUPP5xFySWyRBHOT8 +Atw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1783093829; x=1783698629; 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=w5XX7Rz3Qelo/FGzxIpNIi997ellIca9U5MUALRAgbw=; b=ftAHPb0gvDqEwzJ7XHPZRBZP+Y2OriU8EE17jgUnz0wQlxzhb0lvjvf3U2KnIgFvEo wWWpGYqsQ1x1rM+KtVLrO6sVDjyZmy2ztf7Iy1zdZ7GC+5Ppq8s2CPBVhhKO2oFoLPmI k9xpHJvkx6+SeWMhiuYHNMr+NnGlQadAdZcN9tnrhCrhXB5/Sn5rawEcA3O2ElZ+iXaY vTVGq0+yHZjEzuWcf3ntQKXg07JFH+4d/mTNlFKV/AG0PE/ACCmlx87G3dY7QUjb/RR7 TiIT+MyVpVO4y6He0Wvk5pSuXY09dAyMeAtENc+715DjWQ7UTOa7rtW5p5YNQpHL9vpQ sA5w== X-Forwarded-Encrypted: i=1; AFNElJ9A6hT3G5nUWRo5fh9HxFXIuJGCjtOyRyehAa/2gjRwlMZzilWOWixvLM9qyLg01EbgODuXdyvq9U81UA8=@vger.kernel.org X-Gm-Message-State: AOJu0Yx8Lvd2/hRjLXsOIuCkxicQlbIfsRGuYzBQlXpP4yJLGT7FgSAt j/6l4Lk8aRQg6MvTJU9Ir/9mXn2wgU2fHM1Hfr2SAgSJHnjWXA9ELeN3 X-Gm-Gg: AfdE7cmHPWPbPNr7P5frSm2L1k5Yp+qYpMJpPofIc1I4yoD6wcjJQDJzGgGl6MxrH6j FANRUJ8re1ug3s7taVFcMWcY58ffaIPtThnEdG23qxKYe6WV8USTVopbR/AjI4iE417Wr9N9pkc Mg8nCUAJKLk6jZPu2ZOgoKtRejcwISdFriCa+RkytGQ3/1Yquk76FRLZZ739U4q8avUpI53cBFV /GnF1Ve/R7+m/whT8ERTy72tyhELG+TyfH49xcAJQGg40al9ge4xHZpgvIU96pBGkKukX9w2hzU lYEDy+ecocVFtPAMNXhSy7vOvVsxws98HApp1Vz5wTtVgLJM12P2MpBBkW+G4qwz54MQqaN4bZ4 QOzQULjwA+lShpMqfh7Tn5Qt0F+Bc5/j30xnFfJ8ty3wLS87DEICyOYGYZsJ5aWjBPyKDCHjt74 znzS3SitWIy+o15cXBJECg+OQL2WFZIi18BmPkEqbSQzNx7YSDVr0z9Bs/wiUvVWOibH8/D/Bmv s/0+0VO8qBqVE0= X-Received: by 2002:a05:620a:890f:b0:92e:535b:e08b with SMTP id af79cd13be357-92e9a3c1a71mr192985a.33.1783093829176; Fri, 03 Jul 2026 08:50:29 -0700 (PDT) Received: from i4-gl-tmk5904.ad.psu.edu ([130.203.156.186]) by smtp.gmail.com with ESMTPSA id af79cd13be357-92e90ccde4fsm187435185a.39.2026.07.03.08.50.28 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 03 Jul 2026 08:50:28 -0700 (PDT) From: Yuho Choi To: Russell King , Thierry Reding , Jonathan Hunter Cc: linux-arm-kernel@lists.infradead.org, linux-tegra@vger.kernel.org, linux-kernel@vger.kernel.org, Yuho Choi Subject: [PATCH v1] ARM: tegra: Fix OF node reference leaks in IRQ init Date: Fri, 3 Jul 2026 11:50:22 -0400 Message-ID: <20260703155022.158268-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: 8bit tegra114_gic_cpu_pm_registration() and tegra_init_irq() use of_find_matching_node() for temporary IRQ init lookups, but the helper returns a referenced node even when the result is used only as a boolean or as an of_iomap() input. Use scoped device_node cleanup for both lookups so the references are dropped when the functions return. Fixes: 7e8b15dbc392 ("ARM: tegra114: Reprogram GIC CPU interface to bypass IRQ on CPU PM entry") Fixes: e9479e0e832b ("ARM: tegra: skip gic_arch_extn setup if DT has a LIC node") Signed-off-by: Yuho Choi --- arch/arm/mach-tegra/irq.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/arch/arm/mach-tegra/irq.c b/arch/arm/mach-tegra/irq.c index 4e1ee70b2a3f..e5a611dce7e7 100644 --- a/arch/arm/mach-tegra/irq.c +++ b/arch/arm/mach-tegra/irq.c @@ -66,9 +66,9 @@ static const struct of_device_id tegra114_dt_gic_match[] __initconst = { static void __init tegra114_gic_cpu_pm_registration(void) { - struct device_node *dn; + struct device_node *dn __free(device_node) = + of_find_matching_node(NULL, tegra114_dt_gic_match); - dn = of_find_matching_node(NULL, tegra114_dt_gic_match); if (!dn) return; @@ -88,7 +88,10 @@ static const struct of_device_id tegra_ictlr_match[] __initconst = { void __init tegra_init_irq(void) { - if (WARN_ON(!of_find_matching_node(NULL, tegra_ictlr_match))) + struct device_node *dn __free(device_node) = + of_find_matching_node(NULL, tegra_ictlr_match); + + if (WARN_ON(!dn)) pr_warn("Outdated DT detected, suspend/resume will NOT work\n"); tegra114_gic_cpu_pm_registration(); -- 2.43.0