From mboxrd@z Thu Jan 1 00:00:00 1970 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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id D66C9CA600A for ; Thu, 8 Oct 2026 09:03:34 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:MIME-Version:Content-Type: Content-Transfer-Encoding:References:In-Reply-To:Message-Id:Date:Subject:Cc: To:From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=A4s8WExxFeJWBEEKw7lJ63SJfAx20PrpdU8Po6qXZ18=; b=g45Wgy4+uerRq6cU7zhT3J/eH+ aJ+jNaEv6lL7d5l93DE9GUzON2RPikMhwMUNTuf3gkworxJ0DijkXuuikGbwqmNMg3SxTR253teXr BFTIwk9MdEicM95mocMlhjPrLpKfiX3hpAOtbY3BM50+9z0x56MrmeE7PE9nBmOYYLNRWK2sOZkiF ntuOx36UVPzDson+Hb9fxoqdl73uIT614rflb6i98AilmexmMY4hHfTeScJEqcUHzhXGFuBjC6htr pybzFo2Lbhy5YTlYJAtMZjQAzHkBF/FEAJqRnOLVbYppRXRyM5wEHJjq1kam0dzBCEDgNTejAIO7D kKIEJEIQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.99.1 #2 (Red Hat Linux)) id 1xEk27-00000003x0g-3Neg; Thu, 08 Oct 2026 09:03:23 +0000 Received: from mail-northeuropeazlp170110003.outbound.protection.outlook.com ([2a01:111:f403:c200::3] helo=DU2PR03CU002.outbound.protection.outlook.com) by bombadil.infradead.org with esmtps (Exim 4.99.1 #2 (Red Hat Linux)) id 1xEk25-00000003wyU-2T3I for linux-arm-kernel@lists.infradead.org; Thu, 08 Oct 2026 09:03:22 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=AZoGYUwTtShVYHbTlDzd4wwwmdU7ky+KxEGw8vKJyMshI1QP712NY52gwQwZWflV8+Vdpj62zh9MswSf4aGZWjACyeMqWAF7J7SAuLqzLx41l95yjYeqXe42zKvvvtxJqJB71D1igyYoywpE+Yxrf7J19f8g1Pn+iBIvG6ZNqf0nWMTIxuZe1S6tHLiOyI6RELiNRxzDEq57LewTxEKsDeP4/iLqHMAHpRG0EqmhwfM8ASz67xMm2U4xDc3asV40LpEjz2OxI5YoUInJQQDGzJDsWRa1e7g4/n5weUFnWQ0p3s4pgZE94zSaflrqk9H8cIckhpSjG+fHaRNB8xy06w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=A4s8WExxFeJWBEEKw7lJ63SJfAx20PrpdU8Po6qXZ18=; b=A1+9iMg8ZQNt1AicbVMjnbsvD8rKE8KEuwqpjlIiLoMpOcFnHjtK2aDV1ZiU9JnPqP60gtS5v/QIlNVVCdtOtqAyIt2f4xcV7pNeg1wSTgpSkVUBNHGNFniljcejszu1nXTz532El2L51BG3FMknRsWz2wxfOFXLYSLXrVzh1dB2Uj6zqFJcs1DDmJxjjMMVyY6jx7gL4SyemPUU2yMedcgLpPSPPx2c6kSsgTWU56zWHHdXYKE/5TSxVVH37Vs7YxJu6npRczfRpyOYp9YyFtdzOidzGZjr8q3IZvU/zS+P3tdH4RpJd+yxgOFYo67/Lgs1HAnXgYukou8k3W5wmg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oss.nxp.com; dmarc=pass action=none header.from=oss.nxp.com; dkim=pass header.d=oss.nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=NXP1.onmicrosoft.com; s=selector1-NXP1-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=A4s8WExxFeJWBEEKw7lJ63SJfAx20PrpdU8Po6qXZ18=; b=NN5XT5dhT9Wbo2gExhiZwjPuKriOM9OwL7VdoBI9PgeyErAQ3TQEPAaoFv7H0rBsn0uU7r+18jY6h9V+eaRBIICHY9RV2UQ+R6uHcuP9WzvxoY6XDIFv22xkjDjF+PpT3qCLRn7Ffqoi8WdkKkq82n31l+B/rEEknIM8oZghaqyVI7/3HJ0B2MdLqCPLpo5qsEnbZaA9hBj88s1W732l7WCDSvyqYo4L01nF4GG4YlJT35aVoThuLnT+ikc3menBqTQ77qjUxPuJSwvm5UxuUcqPFVbtxIRlc6ouwDkTgYRzADBMV2bm1J3VWb65qRAsCn8uFfBWrl6yr9p0W3eYDg== Authentication-Results: mx.microsoft.com 1; dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=oss.nxp.com; Received: from DB8PR04MB6858.eurprd04.prod.outlook.com (2603:10a6:10:113::9) by PA1PR04MB10099.eurprd04.prod.outlook.com (2603:10a6:102:45d::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.496.15; Thu, 8 Oct 2026 09:03:12 +0000 Received: from DB8PR04MB6858.eurprd04.prod.outlook.com ([fe80::bc6f:5fd7:462:d0b5]) by DB8PR04MB6858.eurprd04.prod.outlook.com ([fe80::bc6f:5fd7:462:d0b5%6]) with mapi id 15.21.0496.015; Thu, 8 Oct 2026 09:03:12 +0000 From: Zhipeng.wang_1@oss.nxp.com To: Thomas Gleixner , Marc Zyngier , Frank Li Cc: Radu Rendec , Sascha Hauer , Pengutronix Kernel Team , Fabio Estevam , Jindong Yue , xuegang.liu@nxp.com, linux-kernel@vger.kernel.org, imx@lists.linux.dev, linux-arm-kernel@lists.infradead.org Subject: [PATCH v6 2/9] irqchip/imx-irqsteer: Validate IRQ count before creating domain Date: Thu, 8 Oct 2026 18:02:24 +0900 Message-Id: <20261008090231.796511-3-Zhipeng.wang_1@oss.nxp.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20261008090231.796511-1-Zhipeng.wang_1@oss.nxp.com> References: <20261008090231.796511-1-Zhipeng.wang_1@oss.nxp.com> Content-Transfer-Encoding: 8bit Content-Type: text/plain X-ClientProxiedBy: MA5P287CA0232.INDP287.PROD.OUTLOOK.COM (2603:1096:a01:1b1::16) To DB8PR04MB6858.eurprd04.prod.outlook.com (2603:10a6:10:113::9) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DB8PR04MB6858:EE_|PA1PR04MB10099:EE_ X-MS-Office365-Filtering-Correlation-Id: d047e211-afcc-49e6-45ab-08df251afb6d X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|23010399003|19092799006|1800799024|366016|11063799006|10067099003|56012099006|22082099003|18002099003|3023799007; X-Microsoft-Antispam-Message-Info: sVDWrafejOvm8oBQNOGEbdo9/kKeE74gaev4zbpeb50rh5yicyFPDqEzEs1ufCmBO2ehx2bwZjZmwI5OZ+2dCqQQuCJk2oqMtY8nsY7/YJ9ubjDtfUtz0AuUb7ePpd8pmUySom7skmuxpmL1yDXD3qxf2bmaAvrcdenQyeF8eJ/8/ltZkTGo/4EULQR7s+CFEU2YMv/9cZVTuo1h13MzNKqtkYrG0igMNXFRklEWCwmAkUWqwSxZQv1caz5BLPoOU8TmXDc7ttsn9+VNPX72h99znpOrMM2BT2g5drDaNQqTFFVgQnJd+LWKJLXMaluVTO59NFllK6fOcbbnKjDCBCtcEquZPjCqV3vP0pmJ/y+rJFKEZIlkRUQUp7uBb4Ld8QtBH5XRw17IE3hLf9E9J/+aqkfhFPgvfT+PJZRdWlkC9uOYO95ver0RQxqM5kSicPaHLaxYaoN6pFObDIeBRyr02cvWWk62cG42CBjWFuwZzsNNQCZwthZR1Rr+q6qujgG1D8rkl3tnDCkDuHhOC2Zv/ci3AXZ6XMr68J1yrKzWQVX/prC3WpM30oxUgcPBvTTCKbo6cc6716mEQlys+IP658pbTpuYpiLYraKe66OClRsI03WZddgznQhDqz3bVmxK0ZGUnmyDf1dmPoeuoyLFwNYU18NWCoClFY+ltbY= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DB8PR04MB6858.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(376014)(23010399003)(19092799006)(1800799024)(366016)(11063799006)(10067099003)(56012099006)(22082099003)(18002099003)(3023799007);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?9oZzQmRHaLM3P6luCybQsVhKBuRMc03WkZVX3UEvL9l4giWbBeTEvbqjWiyh?= =?us-ascii?Q?putCP4tnzRnzz7SnAert04nhVcIZX3l7V0Bh14m+LaV4zFpYzg94+i3To55V?= =?us-ascii?Q?IVVhfR9Y1R3JBcpy4RaJzJ/U4cH/DHLezT6jr2Z2NKS9kgUKYlcQ/unR5YOZ?= =?us-ascii?Q?1BoO8JNWz7rwp3EX+QfS7ABB+nIu5V4RntWq0+4CwPMyPiKvHBJGh5+TzZ2H?= =?us-ascii?Q?iQ2cLhSYskLJu4/XllCkcWvPN/GKQj1Zqt0OV0dlJwQEJY9Lj3Mr0smh9dYI?= =?us-ascii?Q?QnjEqG0EHBcucN280m0spjONqsS0jZ6O5VO4TaC1XEP7GQ1XuD4D8KrTFyGj?= =?us-ascii?Q?QehuXznME1xF5N0bl5/DCsIyvtehF/c/Zy9plWq6DsbHWrqpBO+Mdg/uhopC?= =?us-ascii?Q?iEPnztN4hh8jS84/QcOCRUu6H4o2tpDm6F3zD+RbbIs3eGWoA3cmsEe2BAX3?= =?us-ascii?Q?/bslyPyRA08Ee4PNKwLEHaw/4gixdS0gwHo2KWzegn2sch0hYuXc37AlQIrJ?= =?us-ascii?Q?/6hPyQ0xvQjnxJ2KaHUL97l6mzEegzYplEDqHl/WzyogRRm7p1RImFhZYW1L?= =?us-ascii?Q?xut450vxXOw9qyoCVrLE/Vu/603ZdId2rWoMA5KxBW79HoG52zI/ZuZnpaE2?= =?us-ascii?Q?8C8lJ9lIC+lorLy57a5FM+G3dFugVzZqxeAH/3eIQqADn6cx96WXhyioye13?= =?us-ascii?Q?sab7fedmasaq0TRO6rtUzPRtkoIPwb6aPSTm+qfCqUlOFUzU3SwIaq4XpcdC?= =?us-ascii?Q?qL/ftcAPOnqLwvX/HMinqQAUnlsdsjgoFNlMcnmSmbCcaAEyFb4EDhSWtNRt?= =?us-ascii?Q?mn15m7OecXdb+ojrOzL0IfQE37ltLjYXcqgM13ND/nfFf3GffsRHMvnRR+qK?= =?us-ascii?Q?+hVGx1UHjvxONC0o/GjVytnv3iLVQ0gV00pekE+hRf6Bin2RaylIAYmD79Ht?= =?us-ascii?Q?ylTmQgLwN8uBFlwp0xd70hA503UFVJ9K9kFbx2JqvWtPFXPoxGSfuP2YIwwm?= =?us-ascii?Q?OLqVAs1lQllTdxitzGnL5NQSR2M6CSu4Mzp4wyLQYc53dOc8kr4dlqvOlEtI?= =?us-ascii?Q?7viUAY8N/MYO5lWccGgstraaG4GKdfaBZOgeflxevOYolXSkBUad/8+yGiYE?= =?us-ascii?Q?8qNWVGw5xElzlpTq4ver3+ZyaKA8B46FCv0HOJ0xw8JPpIqfgSJjmFDRBNB7?= =?us-ascii?Q?+KbYUdshxVSwT1nlW26vu9Qms7sp7OmKsk5E59p54IEXnh44gwdS2A+1YQ1S?= =?us-ascii?Q?LYYMXJ/As7RAy0TWghm6hFlWQK23jmdVuUiNfQCDEPZYVAB2Ad/9xqtA511o?= =?us-ascii?Q?u8JIvGarKRuG1+3F59wQHmZ4ukkbpzFfsAodD21nkkauc4035Tgv00e1Mi+M?= =?us-ascii?Q?JwgU2kK1N4kI9z9zA31+HS8/O0BrGxfFq+466NKzkHZGUdzcya4m9ccrNRy5?= =?us-ascii?Q?XdNl9nB/Swl16Cxe/SmSEr9rd/UHuvE4kD33oFy4+PAP3a0q0SljMihZeHaG?= =?us-ascii?Q?1JcihjlJiXlGNdt+x0DNYXm/l1u6NlWxdiPXWxBxvqQl+FVxcmrD6GJwepaT?= =?us-ascii?Q?v+rRLl9X7iewCboE61zV/+eClv0Ft2KmPFegiuqlM8utH9SGX6M+Rm2bu0iq?= =?us-ascii?Q?ZAOa9SIwdbctrYRmm8XbRYdlAS6KOtaLAiIPYing2jcz1KvvcQAAXOGuUhrH?= =?us-ascii?Q?7wwcdh9Itcfws42S5XYTXy47pxqKZyDfhwYR3Men3l3b6IuCgDzlcaVKhG2K?= =?us-ascii?Q?klu1Xr70ggRsAzeSzOD3L2G9Kaeav5XpQJAlChp+skBtzxq22zVQ?= X-OriginatorOrg: oss.nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: d047e211-afcc-49e6-45ab-08df251afb6d X-MS-Exchange-CrossTenant-AuthSource: DB8PR04MB6858.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Oct 2026 09:03:12.8550 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 7ocsghMGWBw+e4tLJd8izzYOsi5A1hTgK6AuvYviB/+ksTVBnIa+J3lmdN8Ei4TA+1K9/KiZM1w87vewVERcOidbxC36HRaHpgqIgLYigQr9EUDTrahq8tC6xWhfvcOJ X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA1PR04MB10099 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.9.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20261008_020321_637779_83555564 X-CRM114-Status: GOOD ( 13.80 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org From: Fabio Estevam The IRQ count is validated after creating the IRQ domain. If it is invalid, probe returns without removing the domain, leaving its host data pointing at devm-managed memory that is freed on probe failure. Validate the count before allocating resources to avoid the leak and dangling pointer. Fixes: 28528fca4908 ("irqchip/imx-irqsteer: Add multi output interrupts support") Signed-off-by: Fabio Estevam Signed-off-by: Zhipeng Wang --- drivers/irqchip/irq-imx-irqsteer.c | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/drivers/irqchip/irq-imx-irqsteer.c b/drivers/irqchip/irq-imx-irqsteer.c index 1b8d0c8eedb9..766756e76c47 100644 --- a/drivers/irqchip/irq-imx-irqsteer.c +++ b/drivers/irqchip/irq-imx-irqsteer.c @@ -218,6 +218,8 @@ static int imx_irqsteer_probe(struct platform_device *pdev) */ data->irq_count = DIV_ROUND_UP(irqs_num, 64); data->reg_num = irqs_num / 32; + if (!data->irq_count || data->irq_count > CHAN_MAX_OUTPUT_INT) + return -EINVAL; if (IS_ENABLED(CONFIG_PM)) { data->saved_reg = devm_kzalloc(&pdev->dev, @@ -246,11 +248,6 @@ static int imx_irqsteer_probe(struct platform_device *pdev) } irq_domain_set_pm_device(data->domain, &pdev->dev); - if (!data->irq_count || data->irq_count > CHAN_MAX_OUTPUT_INT) { - ret = -EINVAL; - goto out; - } - for (i = 0; i < data->irq_count; i++) { data->irq[i] = irq_of_parse_and_map(np, i); if (!data->irq[i]) -- 2.34.1