From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from AM0PR02CU008.outbound.protection.outlook.com (mail-westeuropeazon11013070.outbound.protection.outlook.com [52.101.72.70]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 698E7486B82 for ; Wed, 19 Aug 2026 16:26:47 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.72.70 ARC-Seal:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1787156808; cv=fail; b=eaCudy/7xibnk+Q572nbkZJhwwYCbyD5uCwvKmiQxdnFabSX3DsWb1ZZsKSZnn0gwS0ivvc97ZcXrmAyXDsdbmp1G6DorFKvJjo3P972UAffqzztz3sBDsN6teAxf4LqoLfoBM+KD6hwr5i3Sxbe+POW2zejzUMrISdhZhUIk4E= ARC-Message-Signature:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1787156808; c=relaxed/simple; bh=82O5seuQANJEsYjIftj+IEjGoVCYgwAgEFB8o7eeMfk=; h=Date:From:To:Cc:Subject:Message-ID:References:Content-Type: Content-Disposition:In-Reply-To:MIME-Version; b=oDaWgG8w46nxgOA/H5Tl+hsMu2STsySZpsbQLj69YslvRVL79KMPtwKxJEhro5TGW+P4TUyLCoFYhNqnlGmySvyYAxYoNxLAxBgVYNkMj3JNrq6a4VQ4TGsdewdeonpcvhXxKcsvK+3F5+3FkOjPfH2ccK96dJP+eIn2z3bhDg4= ARC-Authentication-Results:i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=oss.nxp.com; spf=pass smtp.mailfrom=oss.nxp.com; dkim=pass (2048-bit key) header.d=NXP1.onmicrosoft.com header.i=@NXP1.onmicrosoft.com header.b=dkyIn3ns; arc=fail smtp.client-ip=52.101.72.70 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=oss.nxp.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.nxp.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=NXP1.onmicrosoft.com header.i=@NXP1.onmicrosoft.com header.b="dkyIn3ns" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=yNiChc4xmWE6hzLgeI3zqHgxtn1gCdqSspojIjX58GgAkLnaeFeTJRL5HsuAJNyKhTOdIp3iMPwCBp4xismwneuQeb0n6ymFgl51YpTJndLvjtRb+AnkdeEzMpN5P1WV/QdZLy47VyT6uEDMbh1XkA6v3lSel2HLLpiYGUHZ1SyjHrbYRZLzHysopPLHvWfmUK5tYjEfDLrdXn3RHS37igBr7v/q6lktLqetoGaNezJ+nY7Nb01J67/9p/jFQ4o1VrmiG7DXKnLsO9k3RKxy2aw9RzRaJVjW/BBUq+aL5nCGKr5hWA2YKv5HfiNsOHKyTma21NzhmHQcJ8Xy5swJPw== 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=OX97L8mAw2eY5Lg7AzyvD8JjrPeEWxkJj6GmVwFU9/I=; b=VFmdIgJu9yIJ2Pzbfhumi/yezrwphF6DZTt2YvEmqpSr/ZWL3J9MCuzmUdvoHjmM5IZKWd3mSX/sDkNR68LHSg2LpEaEN4X2Y+s0w1t/xRmWsk6kTewM8s0ARApOhowQ5OCXiS4YkhTLai8Oo9dZEqJ3dQyD/FZAGwMjOPvG78yAdzcAbxXl4+8IBwl8jDcwxi5wJX0TtDz66n51w8YdwcuRHXQYng+g6wPbjGrg+hY459aLmDe+lyajO96D7TL4L0EdKvfX6t6bSW6PG9HNH9SsTXhBWHnAbphceeiMxSSl/ZAkhCCH7kbFeUC3qM63m0RLIKvY3ZstYMjQbU2HBg== 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=OX97L8mAw2eY5Lg7AzyvD8JjrPeEWxkJj6GmVwFU9/I=; b=dkyIn3nsg3Ndm05f+JDTfwa/4B50zYMABYJrGSpSGefgYuUal9pXz5Gqhz1FjToq1TB0J8xgOlHaI97lEq/BJil900YgNbjh0tSiR3UnE3j5XqMiTB2O+gMAvo5QIPYHik1vuwxSnTFw8q195uKc3yYrz5dTNmbwssjzJAoil+x0in5tsQmUqPMpg5Fhr6DORe4E0R1AHRFjq2Rd9htb3xYLCW2qojrUxLUXgBy/qgAm2tpNAgGTPEqIpVI+xbzpZpltIh+gqiRP5f5i3NGCDILnYEJwQyvn4J4wg4BI8ZRqdeITbpQiMuR+m3QwZjiX2CfxgS2YvKlmY8IwAvNhCg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=oss.nxp.com; Received: from GV2PR04MB11799.eurprd04.prod.outlook.com (2603:10a6:150:2cf::9) by GV2PR04MB11215.eurprd04.prod.outlook.com (2603:10a6:150:279::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.339.8; Wed, 19 Aug 2026 16:26:44 +0000 Received: from GV2PR04MB11799.eurprd04.prod.outlook.com ([fe80::2146:83a2:5329:b7c]) by GV2PR04MB11799.eurprd04.prod.outlook.com ([fe80::2146:83a2:5329:b7c%7]) with mapi id 15.21.0339.007; Wed, 19 Aug 2026 16:26:43 +0000 Date: Wed, 19 Aug 2026 12:26:37 -0400 From: Frank Li To: Fabio Estevam Cc: tglx@kernel.org, radu@rendec.net, Frank.Li@nxp.com, linux-kernel@vger.kernel.org, Fabio Estevam Subject: Re: [PATCH v4 2/2] irqchip/imx-irqsteer: Validate IRQ count before creating domain Message-ID: References: <20260817190621.335492-1-festevam@gmail.com> <20260817190621.335492-2-festevam@gmail.com> Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20260817190621.335492-2-festevam@gmail.com> X-ClientProxiedBy: SN7PR04CA0081.namprd04.prod.outlook.com (2603:10b6:806:121::26) To GV2PR04MB11799.eurprd04.prod.outlook.com (2603:10a6:150:2cf::9) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: GV2PR04MB11799:EE_|GV2PR04MB11215:EE_ X-MS-Office365-Filtering-Correlation-Id: a2141020-d781-462f-8896-08defe0ea80e X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|19092799006|1800799024|366016|23010399003|376014|11063799006|10067099003|4143699003|56012099006|3023799007|22082099003|18002099003; X-Microsoft-Antispam-Message-Info: IegmPymRKjClBG01lFVqJhWlofTpijnFCWqEX8tx/dTw9dpR7q9LOZ5X1Yhy5TyiRSob0KlkTgJpZ5zrxY7S4OukQ7zPipvbfN9kI3OeFuRaS8hX0WUzgu8BhuYz5Fip0Z4PPtGwaeuqwK2gAbjKBqdwawFIgMjTCjDnwMjl47ZUx8zKpK7K1zhXvgUlNiyqsRk1vJsEcQlv/UpBiunmHjl8A/1dJouJZpnuDcKN68aCVZfP3i11rLsS1H9hN+aM6R1Rjfn9m+tqFnpySfcR2Q+4/IyAwghGhlxeo9okIK/MyW+jP2zFGKI3r6BzlYwpVA1AxApER1yR/W3kq18EUT4odGD1i+I+0Z+vEv87FoN6CIbkmQJnmx3Ms4nDErgacbYLbt8AaiXWPLuayvqN0uUethLEP7oHq/Asn2TwrMd+ZaNrFbltU6dCrLaJMoE0c6sGUrQysj+jxTeeZflNXKOkFfhR4m51RQK84gqLreTLnnj/ioafbUKKltksmwNfF0LNNbLFRWXteV7zTi8JDgUDaeEAWgl1s4J65P2I/YlXnFNDulETCCCrf7faPtdBvEnpb2fd5PKn4YPiqEzL/u+AxiV/0RH0vZn+8eGbFPRRYsMTAnecT9+QtXtvvQ8qIN948OlT/4cJHrzqIqC51kX25Q0Q74g7kG3CHfqENIw= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:GV2PR04MB11799.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(19092799006)(1800799024)(366016)(23010399003)(376014)(11063799006)(10067099003)(4143699003)(56012099006)(3023799007)(22082099003)(18002099003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?3y4/nX8aKBATxVCB0EuqVR06xoCMrbcx6Si72rXNVLdlL2bCU5UsYxtr8pEP?= =?us-ascii?Q?CrYWCPwG8abF8KDvFTnqPd4myIeuTxq8AHgsxniR4zMSUz97Npkfy3vCHkph?= =?us-ascii?Q?HzvKrdlaMhEJpv+hZg8tanTpc6xqAPUNiO11LfmU9LLMJmt8gk9sNOw9Vd+d?= =?us-ascii?Q?vZFpjr92zMk/zIP79yA5fx17IeDQQSH9rL49ZUsPuleg4iLIkCw8JwXMoKPn?= =?us-ascii?Q?a8pGwjyPk8opXGeEMlmeEprTQzFJCd5GEsSyXH4MqEpaImt1iDLEId6Zir2R?= =?us-ascii?Q?ykt5TuFu/jO9EP7m0O3j4+qtk3RNSREKPckamjq2D/S9Prsg7YxCny0HSZ5M?= =?us-ascii?Q?tIhfXMSAX1wZEVXkuXuOor0i81VoFoYFTl9GcH5CGv8PQ1IJVU+V5eIzD5uB?= =?us-ascii?Q?2d1MZAdtaSOyYKsX0iC4uNQLo9fDfNS9LA3eP/+wJx4YkYl9WSldG8A2JXH7?= =?us-ascii?Q?VQ4M3elh5K+YCpDl42SBFTUeG0Di7XfYlRroEbWPYLwjEC2UXJ510bNkgPKo?= =?us-ascii?Q?21JbHrMTakeHqQDv+hh3sBM2cV0OhEUqiAco1tpIPHd1C23L/Ry5NHNTyxls?= =?us-ascii?Q?R6cLzFqqZpV8ibF4K0nWeIfG/6DkWoKfX0YTNp0eti7G11UfNTsTjU5aNn2O?= =?us-ascii?Q?gSllGXfm233ADHo+H4y475woDFPxeOZLtkvb25CSXCLTy/HisBniDpEumHlh?= =?us-ascii?Q?Wy5rUuqP3KtFxSYiFkfr3FaiZjubetpKRQNJWAAYaBbDrCCmJFnZF5HThOif?= =?us-ascii?Q?iEctHEFrLuwSQ+EPiSNbMGDn1/cll3Qw/FJJmf8VAuCgMTPMAUsj50lbf2uL?= =?us-ascii?Q?bQuPZQQ+FXP76jChfQOupoFnK3lcK3+COG8J00GjgpHWQsE1ZfsV6NdLH6ZT?= =?us-ascii?Q?V3Bw6hhXA386Q/r3mwRE5TDPmXzn822WfRifPc81J6r8eePoKm4FQRwpRbSx?= =?us-ascii?Q?GO74yUeyWGsA3sJjiy3W6ICGBEB61siSzIqrulgF4Ln74BRSs5CyV8Bc6ZeZ?= =?us-ascii?Q?6jV9Iq83Z4sNMIL0bAMHQ0Mm2zsONfD6lG/QyBvexECHiSWzqpvouWOXWPrO?= =?us-ascii?Q?D17hIzkGg4j+tj/FEsunmJ9umElClj8y6HD+9Wqt9/qUW0WDtPJ1EpHSyyU4?= =?us-ascii?Q?aICCBLxvShrBPH0vYsYgsHrjgzwzVAMFDmq0nZpekj8ny/tvLDz1CtLet+7n?= =?us-ascii?Q?06ELreOw4Wsdq51lUGAzAO1ESXoYwN8JW1IAxosApI2DrlOf0nYZjKkFZRM7?= =?us-ascii?Q?3MpQ0jHz5JyrYDyue10D8pFBnFJfA3tTaT+2GTQGU7mN/QAIPLsQ/j4RjTqM?= =?us-ascii?Q?PBhXW+7q/NPrxnBE5Mm7vLaI0QHUtPzDtfLK326hBVPzDWIb3isIvoaWBpSB?= =?us-ascii?Q?JFNqTBTqwk2T/WbNAo+R+jz2HdY+XxtXguKNfzvHS/Jkh42MGWj/a0mL0zKs?= =?us-ascii?Q?FazjY8EkdDkmFcxXU6mkm4ICn6Wh6UlF8sDPhkfmqzQHgfIwPXxwB65+4u/O?= =?us-ascii?Q?IQxYrOIknMa4W0AWgZZBMejt9DLHMwSbdIoNiqnsafGJk4pXO2XkMzxAzK8d?= =?us-ascii?Q?YWNGrERMETerfXpm8lkKEALJEIZfyAsK9ztRQuOZHWjaofR1YsOYMkskxRno?= =?us-ascii?Q?52xZTYvVL9yrcyBW+NWLqQD7tLWRtRkgw/RxOcZwyG58D1ApFzLppCVIEjw8?= =?us-ascii?Q?Jwn+s4I1wcb9N3wRoEY5Muie6yA7Dzn4Kd5pgBHs8d3uI42x86odZDsvr/BF?= =?us-ascii?Q?O8048//JCEZVjWZ30yiYYNMLj/k0R9lN9ToP8/c4MU9c12G9v8z1?= X-OriginatorOrg: oss.nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: a2141020-d781-462f-8896-08defe0ea80e X-MS-Exchange-CrossTenant-AuthSource: GV2PR04MB11799.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Aug 2026 16:26:43.8484 (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: 8fpvRjZlpohjT/T4fMY2/kvIN1GO5DBKhBrwKdpyBqxFTVQeqH+trtlJt6lfsg9BWpkhtHh+gx5dJ4iawcFk+FoDbuPZwXirvF+QkypOAtI+LjNryWwotB3M/wGFe6aW X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV2PR04MB11215 On Mon, Aug 17, 2026 at 04:06:21PM -0300, Fabio Estevam wrote: > 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 > --- Sorry, I missed this patch. Reviewed-by: Frank Li > Changes since v3: > - None. > > 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 f4df5ae73e9a..294939fcdafd 100644 > --- a/drivers/irqchip/irq-imx-irqsteer.c > +++ b/drivers/irqchip/irq-imx-irqsteer.c > @@ -217,6 +217,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, > @@ -250,11 +252,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.43.0 >