From nobody Fri Oct 2 06:58:29 2026 Received: from BL2PR02CU003.outbound.protection.outlook.com (mail-eastusazon11011065.outbound.protection.outlook.com [52.101.52.65]) (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 D3DC444CF44 for ; Tue, 4 Aug 2026 10:13:46 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.52.65 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785838430; cv=fail; b=Su2xQ1K8E+MtV3y9KYhPHhcyrAgCh8X/BU7mOMeVsv7L1zeJcU/cu1WehapUsbXJO8mg9j577sNnvu+3FpaHOtUBlpfxXqU/N0YMTOPuhgJFxeNndh8UMp5+HBnoU1uANT27XzoZcO5jsOLer97Q6rNXLz20E3IRsH8IV1VA7Q0= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785838430; c=relaxed/simple; bh=sxWKRi8069peCGGbw/c20whUbeziydSDo9+oz9QmzF4=; h=From:To:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=m/AS+EpfOZCllnHZJ30th6B30oNdf5oLIvUzvODTqyttXxv1KUO1qcwh6+RUrLE7Cg0na++5rw7h+sKMfsa3W38M0DoN8ijZasbbtFhp/DWNDK6t3e4sxrU4B2feime97dTCCrCqxZZUrFTZ12dz3fcVSx4IpV4DLTK73xdvtBo= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com; spf=fail smtp.mailfrom=nvidia.com; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b=tGcPSLMG; arc=fail smtp.client-ip=52.101.52.65 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=nvidia.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b="tGcPSLMG" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=dEuunriFLpSAMODdVRpv85MA4bFlBks6ZYRy8kJWM04W+pAXyJBJD0z9Qa9IIh8w58lL9+I9YOCWpYNk0J3OH8uRnAYlLIcTxL8/NoUdLFnrNEmwQvV3w+4Q/Ij+JvO3u6rx8s7XsImot2RGNXnf78H6n3dHU1t+y87w33DTqRcKVsJrybaMiiaaIssYDHu0XWkrvsyM8P/ZFJmd4FHfQfj0CKYu6NWaWiUFM8EquUzDdPaktIIR5v3/VghQIG4xpfu54wYPoJHVQflQ6MGrrSWUYvPGvEv8hVlV3T+A4cyf/SF4m9pblwjE6tkNwUkbW5dq1K4aVtZZRV8Pls/sFg== 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=L2VnCsUPCd4m+awsdNZzG6+0QyGtEc0jsH23ed1oo68=; b=s46MENRdM2jjz4zTqnlDTf2Tz/X+SGZrUEvHQsYi/s7P2RYIWyB2sbwzQH3R9yXLgFa3oa+GT/jA8LLf6509pIMvGlTQIV1W2/8u8tltiK0RpsDaFfQsBPUuFaE0xZSp0oWpUIqUPcKVnB9aWz451q7ibYK93drcFQv6B7kBd5NHbWjWo8f14eWNuD7i7YFwWtbuPt7d1+x7vAuARPAWWAhFX5WTY0ZYwsITBQG6AZ1VEa4wSIyx0A8inx5W2FHpxm4DOFgpmCm7KUPSzq8drTCpGpxhlrA2bpLn+/YH4xAhSBg8Rpp32QEHcvw24/srk58sUCRqENy8AbTh7dogsw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 216.228.117.160) smtp.rcpttodomain=bootlin.com smtp.mailfrom=nvidia.com; dmarc=pass (p=reject sp=reject pct=100) action=none header.from=nvidia.com; dkim=none (message not signed); arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=L2VnCsUPCd4m+awsdNZzG6+0QyGtEc0jsH23ed1oo68=; b=tGcPSLMGxD9LR/HMvxCnbzUh6lGhFJXuX1gnUaQ72CUGZ7egTXiWn1ksC3nPTRnb8Tjb5l81P41anb0W9b1QE+LrjD9BwK6TpWLTHeSBLJe95wzjtP1ydCCeQ8yWIyg6NaoVAm2DfrFK7pmuBrIyRNlwh1qQVZvgmhzi+pUYvnb4+x73hpXZ3u/VQJBHgEV/bOO9bq348Hg6G950uffg4AHZTt2ROrXtaZf8X1pFuOEDQkgZjwyFAZvY4c0Ik237x3tYI3WDIoST5q7aTUHFt7RWLRBs1Vd7oSozodrCvtW5cFBcQK+GizuEiIhgpJHTGHPeKc1jLUhjR26/ZHjWJQ== Received: from BN0PR04CA0199.namprd04.prod.outlook.com (2603:10b6:408:e9::24) by IA1PR12MB7734.namprd12.prod.outlook.com (2603:10b6:208:422::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.292.16; Tue, 4 Aug 2026 10:13:40 +0000 Received: from BN2PEPF0000449D.namprd02.prod.outlook.com (2603:10b6:408:e9:cafe::29) by BN0PR04CA0199.outlook.office365.com (2603:10b6:408:e9::24) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.21.292.15 via Frontend Transport; Tue, 4 Aug 2026 10:13:40 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 216.228.117.160) smtp.mailfrom=nvidia.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=nvidia.com; Received-SPF: Pass (protection.outlook.com: domain of nvidia.com designates 216.228.117.160 as permitted sender) receiver=protection.outlook.com; client-ip=216.228.117.160; helo=mail.nvidia.com; pr=C Received: from mail.nvidia.com (216.228.117.160) by BN2PEPF0000449D.mail.protection.outlook.com (10.167.243.148) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.292.8 via Frontend Transport; Tue, 4 Aug 2026 10:13:39 +0000 Received: from rnnvmail204.nvidia.com (10.129.68.6) by mail.nvidia.com (10.129.200.66) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.45; Tue, 4 Aug 2026 03:13:25 -0700 Received: from rnnvmail201.nvidia.com (10.129.68.8) by rnnvmail204.nvidia.com (10.129.68.6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.20; Tue, 4 Aug 2026 03:13:25 -0700 Received: from build-akhilrajeev-noble-20260602.internal (10.127.8.11) by mail.nvidia.com (10.129.68.8) with Microsoft SMTP Server id 15.2.2562.20 via Frontend Transport; Tue, 4 Aug 2026 03:13:23 -0700 From: Akhil R To: Alexandre Belloni , Frank Li , Adrian Hunter , Akhil R , , Subject: [PATCH 1/5] i3c: master: Release the fwnode of i2c boardinfo Date: Tue, 4 Aug 2026 10:12:57 +0000 Message-ID: <20260804101301.2975911-2-akhilrajeev@nvidia.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260804101301.2975911-1-akhilrajeev@nvidia.com> References: <20260804101301.2975911-1-akhilrajeev@nvidia.com> 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 X-NV-OnPremToCloud: ExternallySecured X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BN2PEPF0000449D:EE_|IA1PR12MB7734:EE_ X-MS-Office365-Filtering-Correlation-Id: e700f683-44df-46cd-f3d6-08def2110e21 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|1800799024|82310400026|23010399003|36860700016|56012099006|5023799004|11063799006|10067099003|18002099003|22082099003; X-Microsoft-Antispam-Message-Info: tgX/sk4+hC63CdTQKFh2LOZPZ7nxlEooNkvr98UdMbJFT2A+TLAYdrXBH8kH4uVs7vOYSbxP3u5PqcTPSdeZMq8OQOEazsGU6TFJ+Dj7YYjPQhRddNsGLECo2YVkAgeNTNhom9V9uQQTQm2PKhjpz2X40gjsMo8dgMXI3B9BYs+bMPvHpL6kJOTOIpyAwOkUHN6lB9vAalBL7yzA73JPITy2oCrKqtwOFtmju+NuJqw5je+irtDaasnkDGgIl8ShHJr711mzdwvbf3BwtL7o1NFYtl+DeWWypLJDBAK0J4kwLJOczxJJm+ouQQ3vEj/R/iBelGrWZH+AfRsoNYwZm/9c2GeRBYzSs28ohsAXtXbKNQ4B/0kxta3NCZEBuqqL/vnPmzdU5wBkNGktbRytNknLxSjKUBtN0vR5lGUFSDlrc7NmreVb+T0cGse2O5/uo9PGGKmYZpA/LT6IObWbwViUuOamIVDriAAvk2g9x9tRM6DXKds2VjC0NreEMJDnc/KvXCxRPlG+9XBDgdZP3tTWZSjhg9znrfaVUvs+zlpW+n0PWOAyIWj0G+H7Bq6erheKujLfnoXV1umbzfzzAoiTR0Cdf17tqfkIU1JUOQddMmO0qDWzCBRqVoJwOeXuwab8Jgo+X5iLmMkxIWHe0y9MHbgE8BLhGZhQ7+kEnymYqB9hFamStRsjhxS1CB5d+Myo1xrySS3TC/e5A83GcA== X-Forefront-Antispam-Report: CIP:216.228.117.160;CTRY:US;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:mail.nvidia.com;PTR:dc6edge1.nvidia.com;CAT:NONE;SFS:(13230040)(376014)(1800799024)(82310400026)(23010399003)(36860700016)(56012099006)(5023799004)(11063799006)(10067099003)(18002099003)(22082099003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: oHZIlAtlYgkZDhf3G44UdQxthvGSVrC1mU76yyuscr5phADmrt3eaJT1oWglhIdsO6Gd0SDJqLJgfm+fBxq5QQe2fBlOIuDd3xyIqGMMGw1bH0pm00waOQiTayWFRSZZpFecMKgUzK9UzhNnEeVYvL/aTGzk5foW7HDmJY547sAtnISC8l/vOWATUrYpQMyVBz/mMN4GaSjJN1wUMU6kqUvIz7uY/c9CPUbVwAszTvX+bRwbvvYV/hLT0h4A17BmbTwmukYH49/natvvynxb+e8sg7DKHVm5PZVAoJl4I8NxqpaVLn4GHV3hl66McYsLSbOkqFpToHCC8GIes5lDd8xi3ibQ7j+6yHHd4LSCqXn9Q56LS0qH4j4VzxIgfPJ1Tvb/HdcU3LT5y5GXojwhD9xsfS5+NEYHo+v3EVYsY18wPJkl2FyWtyR1KM8sB03u X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Aug 2026 10:13:39.6880 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: e700f683-44df-46cd-f3d6-08def2110e21 X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a;Ip=[216.228.117.160];Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: BN2PEPF0000449D.namprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA1PR12MB7734 Content-Type: text/plain; charset="utf-8" i3c_master_add_i2c_boardinfo() takes a reference on the firmware node of every i2c child described for the bus, but nothing ever drops it. The i2c core takes a reference of its own for the client that it creates, so this one is never consumed. The nodes stay pinned for as long as the system runs, and more references are leaked on every rebind of the controller driver and on every failed probe. Drop the reference with a device managed action on the controller device, next to where it is taken. Fixes: 3a379bbcea0a ("i3c: Add core I3C infrastructure") Reported-by: Adrian Hunter Closes: https://lore.kernel.org/all/97465893-3650-4f37-98b7-1db76fc6fd03@in= tel.com/ Assisted-by: Cursor:claude-opus-5 Signed-off-by: Akhil R Reviewed-by: Adrian Hunter --- drivers/i3c/master.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/drivers/i3c/master.c b/drivers/i3c/master.c index f485b98805cf..08dc10f172aa 100644 --- a/drivers/i3c/master.c +++ b/drivers/i3c/master.c @@ -2871,6 +2871,11 @@ static inline int i3c_acpi_add_i2c_boardinfo(struct = i2c_dev_boardinfo *boardinfo } #endif =20 +static void i3c_master_put_boardinfo_fwnode(void *fwnode) +{ + fwnode_handle_put(fwnode); +} + static int i3c_master_add_i2c_boardinfo(struct i3c_master_controller *master, struct fwnode_handle *fwnode, u32 *reg) @@ -2913,7 +2918,8 @@ i3c_master_add_i2c_boardinfo(struct i3c_master_contro= ller *master, list_add_tail(&boardinfo->node, &master->boardinfo.i2c); fwnode_handle_get(fwnode); =20 - return 0; + return devm_add_action_or_reset(dev, i3c_master_put_boardinfo_fwnode, + fwnode); } =20 static int --=20 2.43.0 From nobody Fri Oct 2 06:58:29 2026 Received: from DM5PR21CU001.outbound.protection.outlook.com (mail-centralusazon11011047.outbound.protection.outlook.com [52.101.62.47]) (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 414A2469849 for ; Tue, 4 Aug 2026 10:13:52 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.62.47 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785838436; cv=fail; b=Zwo6VidsNLrthnSzBRQLV1zpR7362sxwTGSt5htRfcTwFYE7/97BVqZcIejPWelA2fQOvgFRyYmymCi+6VbYEtqVNsv6QF+OfiuDYDLHKQytMW3+RSnka0wC6YnvZschHYrnd4Luf4DanB2AppdgjGzCecZec6aAywYcPJju8kI= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785838436; c=relaxed/simple; bh=+2AlsepvVZFxuG01od+NRH5bjMOjcrfIi3Ct+SL6rKk=; h=From:To:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=SV9+TKYcc0bdILtipHx1fr4OsmCmNxx/IbMR6SGZngHLe0mJ0ZRLAvH0ggQyhj7LqaqCXeWObuUyPUCl+0rLIdbkRlpt47jimjdgvAuEZVqmaHcCXvu+mk1qWJDdmfDgnaOIUgwjnCH9alqrld4Fl5n3L9ictPwlA+rmpsiX5nc= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com; spf=fail smtp.mailfrom=nvidia.com; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b=RZ9/NdBb; arc=fail smtp.client-ip=52.101.62.47 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=nvidia.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b="RZ9/NdBb" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=qR0r3GxC1srWlrFirVS5RigPrHITMhVS6rcJhTzJF06uqkJURTMJn+/9KrAOQbYYQagQnkFp4NhoXVOZuNGrFDvhCDdz/xtMuFNS35zXpVOXQB1zEsR//J6cRUCgdZjDZfbatV2F+LtXuPG/wZgTTaIYKPb5XaYULB/hkf17HDnBYwPATHmx9191fLEmBG1AKQ0blANanhqGC3YcFlMowLr5wonium0JM6gzAX0DnTJpgvMJU8quVlG8YnBQY+1wr0vxXZ5SzIQSSD3b4OwdszNWEP1Ot5eqt3op9Bm+2pNWgcWEmPJ1C5e3A3X+YxI4PJbun1s2GUm0n9pXBQpBWg== 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=ev2cf9LjZQbzdoul9Oqi6NMr67KFyKnHZBAAuVifTRE=; b=hgZZ4KndGZzrqm4mUninCrSYi8uGwendNw1OFSAokR2gt6VS74AqUXzqGT3cK7cvEXYvOzXOydyv8jSP5+ESDZkUMWoit4sr6J5FXzcXRz8L9U+lTYUdGffl4cFSG+GmTWWhtPDKdxkf2iuNN7j93piblCZHAwPwHuBT2AFa9Cv6MJYfU7/BtWrcJ8cNKIcL/VpUgUu5h42UvU5NNzCyEyRjOuw0OLPpgA3S0QpTgJQ8DlyPou7rMnTwr7jY1LINnHj/fZNByli7MRWrqYHlx1fE0Y6OFIbxTE+Fl2MYh2AcIpw/zLVAvQRAwf59V8gGHoPSzSkaWtU6JH+2Xa9Waw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 216.228.117.160) smtp.rcpttodomain=bootlin.com smtp.mailfrom=nvidia.com; dmarc=pass (p=reject sp=reject pct=100) action=none header.from=nvidia.com; dkim=none (message not signed); arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ev2cf9LjZQbzdoul9Oqi6NMr67KFyKnHZBAAuVifTRE=; b=RZ9/NdBblOrp8DWy+taRLl28HHJfQSFUg6sL/Kk6FPRu6mKk4IpkiQL9y89MjYzKZ6rzi2qi0JGpBPem7TSOlDJ3leaXDIoB7RwjhhZir3Ydk0qMfb+gwjsJpbatkGM4mEdwAJiIejeKBXrPERbO5azkeJ9tg/XiWKPQInSH7BZBY+C9ROwtKTfPgvo0tau46H6Zt5K9BadKPnXxHdWpY+JXjNq8ZsFr4IxT1TXnT98oxEhKWAyzVlu0ph9kZ2YyuKpHyRxj3mciZpVGwkEFAgnPea/DwFemMextPUo8s1bRMfb5s9HM/w5MWF1Rs9Lj7RZwzL6wW+nmgQ4Rbx5Kew== Received: from BN9PR03CA0071.namprd03.prod.outlook.com (2603:10b6:408:fc::16) by CYYPR12MB8962.namprd12.prod.outlook.com (2603:10b6:930:c4::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.270.18; Tue, 4 Aug 2026 10:13:47 +0000 Received: from BN2PEPF000044A3.namprd02.prod.outlook.com (2603:10b6:408:fc:cafe::49) by BN9PR03CA0071.outlook.office365.com (2603:10b6:408:fc::16) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.21.270.18 via Frontend Transport; Tue, 4 Aug 2026 10:13:47 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 216.228.117.160) smtp.mailfrom=nvidia.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=nvidia.com; Received-SPF: Pass (protection.outlook.com: domain of nvidia.com designates 216.228.117.160 as permitted sender) receiver=protection.outlook.com; client-ip=216.228.117.160; helo=mail.nvidia.com; pr=C Received: from mail.nvidia.com (216.228.117.160) by BN2PEPF000044A3.mail.protection.outlook.com (10.167.243.154) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.292.8 via Frontend Transport; Tue, 4 Aug 2026 10:13:46 +0000 Received: from rnnvmail201.nvidia.com (10.129.68.8) by mail.nvidia.com (10.129.200.66) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.45; Tue, 4 Aug 2026 03:13:32 -0700 Received: from rnnvmail201.nvidia.com (10.129.68.8) by rnnvmail201.nvidia.com (10.129.68.8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.20; Tue, 4 Aug 2026 03:13:32 -0700 Received: from build-akhilrajeev-noble-20260602.internal (10.127.8.11) by mail.nvidia.com (10.129.68.8) with Microsoft SMTP Server id 15.2.2562.20 via Frontend Transport; Tue, 4 Aug 2026 03:13:30 -0700 From: Akhil R To: Alexandre Belloni , Frank Li , Adrian Hunter , Akhil R , , Subject: [PATCH 2/5] i3c: master: Fix refcount of i3c fwnode Date: Tue, 4 Aug 2026 10:12:58 +0000 Message-ID: <20260804101301.2975911-3-akhilrajeev@nvidia.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260804101301.2975911-1-akhilrajeev@nvidia.com> References: <20260804101301.2975911-1-akhilrajeev@nvidia.com> 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 X-NV-OnPremToCloud: ExternallySecured X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BN2PEPF000044A3:EE_|CYYPR12MB8962:EE_ X-MS-Office365-Filtering-Correlation-Id: addd7646-b7ca-48c9-126f-08def211127d X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|82310400026|36860700016|23010399003|376014|1800799024|56012099006|10067099003|11063799006|22082099003|18002099003; X-Microsoft-Antispam-Message-Info: zunJyVq450+GXid+6Xy4x+9JRpigyBOk7537lChlcyyXMCde5pzivJIhN5iN3l7j7x8p1nC7pa2xc+kWbNIgmE6tV7jIr+B10fn7IAJokHzFeMjXd20zmcZ5pu+6ibBt9EyrLKNNpMeUDSyN2vpA+7BjcvYyhxaGeY/AGodB2BrUr7MwtvTgbhUlnUChI+1CkG1Yg34/RRPUOm9pmgdpQKB5i/W8vIKZqLVKkhTaLuc9XK7JXRfcxszUWytixkUB/hwNe1qP5xKRN8wPR8ONgtnnXPBgAxkSBuZ1Q2xcQcgqAAVBPq5/dr6VBIkV8nRXNpPMefl3KcDUUmQUJ+gfoLLg5aomEwyNEmpuAXBeaVLxxd9S6u3FQwgEPiv5gRiyQKILpSgnLk3iGMgR7nDBprGuTxbDuXCImWadJmcBj/wbHL94A7POmILsYmhTBuK21X962XgirEfIZ8eNsQGWW8Vi2iBiFnbAMlytzwr6LMJ2IZFnQ4GCFHsDinItLOXBCyKOC5JJt6f2EijiYaYZq9On+yvmP+0Ds75cJNyIugixen2L3UYjAGMSmCXoNIePs7pZKlklVlPgXOLYRTmOJaiyJSKzTDAD4xLVMIL8/fQXEkUtho1ak4gQocLkmhsyXHczaXPplsutrTT3KRhfGL9RokNxOkIMMoPkXL3YFtNNtjlstSuJuyuJI6Pg4uyorcwdtW0mFMjmfdiPpRSsSg== X-Forefront-Antispam-Report: CIP:216.228.117.160;CTRY:US;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:mail.nvidia.com;PTR:dc6edge1.nvidia.com;CAT:NONE;SFS:(13230040)(82310400026)(36860700016)(23010399003)(376014)(1800799024)(56012099006)(10067099003)(11063799006)(22082099003)(18002099003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: PUqg9Dl9ltNfDTD///9pA+HpCGO2xfuyaNcrIMQU5UkbaOSL1NSNc88RcS705BuAqgcSrU7j5BQx5N16Q7otD50vHThDCwhRRuxGzE7/xiLSRsC8s68eb5dy2TQxctHQ+CoQfsUbEUsMVILOxyDs6gQCQjxI1Nb+sVZ+OSIntrbg+FTUySI5VHYJdsMMkXqSiIKz9CKWDzgWWy47IcwP1/PvHc8hv8vt8vrUkh6uI63HiPLYG9KoB2BprUswELOLhwLGLkCvaEKhO2y0KTvI0ollMJ7B9FUL4aW6q+no3i2WakvPPfh+Gs8nUgr3bmz7YWPuiMNmljkVDTrmuH+X5ykCJPE/EX9zQTX3L6P6PERXw9c74YwMbZoXoTcPS9OcFQ5LirfJS1vs9Xh3LsEZQ8ARUBUDpNGdxEOLc8XrI4zkLEzzuH4iUZZR7ySKuMAc X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Aug 2026 10:13:46.9875 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: addd7646-b7ca-48c9-126f-08def211127d X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a;Ip=[216.228.117.160];Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: BN2PEPF000044A3.namprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CYYPR12MB8962 Content-Type: text/plain; charset="utf-8" i3c_master_add_i3c_boardinfo() takes a reference on the firmware node of every i3c child described for the bus and never drops it, while i3c_device_release() drops one that the device never took, as i3c_master_register_new_i3c_devs() assigns the node of the boardinfo as is. The two mistakes cancel out for a device that is registered exactly once, which is why the imbalance goes unnoticed. Register it again, as happens when the bus is re-initialised, and the count underflows, so the node may be freed while the boardinfo still refers to it. A child that never joins the bus leaks its reference instead. Take a reference where the node is handed to the device, so that the one the release callback drops is balanced, and drop the reference of the boardinfo with a device managed action, as it is done for the i2c boardinfo. Fixes: 3a379bbcea0a ("i3c: Add core I3C infrastructure") Reported-by: Adrian Hunter Closes: https://lore.kernel.org/all/97465893-3650-4f37-98b7-1db76fc6fd03@in= tel.com/ Assisted-by: Cursor:claude-opus-5 Signed-off-by: Akhil R Reviewed-by: Adrian Hunter --- drivers/i3c/master.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/drivers/i3c/master.c b/drivers/i3c/master.c index 08dc10f172aa..568788e4cdb5 100644 --- a/drivers/i3c/master.c +++ b/drivers/i3c/master.c @@ -2102,7 +2102,8 @@ i3c_master_register_new_i3c_devs(struct i3c_master_co= ntroller *master) desc->info.static_addr); =20 if (desc->boardinfo) - device_set_node(&desc->dev->dev, desc->boardinfo->fwnode); + device_set_node(&desc->dev->dev, + fwnode_handle_get(desc->boardinfo->fwnode)); =20 ret =3D device_register(&desc->dev->dev); if (ret) { @@ -2994,7 +2995,8 @@ i3c_master_add_i3c_boardinfo(struct i3c_master_contro= ller *master, boardinfo->fwnode =3D fwnode_handle_get(fwnode); list_add_tail(&boardinfo->node, &master->boardinfo.i3c); =20 - return 0; + return devm_add_action_or_reset(dev, i3c_master_put_boardinfo_fwnode, + fwnode); } =20 static int i3c_master_add_of_dev(struct i3c_master_controller *master, --=20 2.43.0 From nobody Fri Oct 2 06:58:29 2026 Received: from PH7PR06CU001.outbound.protection.outlook.com (mail-westus3azon11010059.outbound.protection.outlook.com [52.101.201.59]) (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 48740469847 for ; Tue, 4 Aug 2026 10:14:00 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.201.59 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785838444; cv=fail; b=OC/8in0fM/bDIFEl1JrvGG+k38aCgiLJUMsdYv6FUr4QtIZvCsTtZwoFtDU6s2jOp4BURPjtd4rq60PboBKrfcAWZ49NS7z2FUjG7vjUDO1sbXhbLpt1Gvwe2/1hVMs474tLBv9ewlDgZFw7RCB4BzFVSGkmOlpCQZib4KDgJXE= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785838444; c=relaxed/simple; bh=l9BG83l6qQQdZBqvs7HdaZ5c0LpC+mp0JL1IGAgR0J0=; h=From:To:CC:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=s445OIel1SYeukmyBeheUtLocffjzCtbphUD2dRFn1xhp+QrG0v7+NlsLE3zCvYwD0JaZ33AJBm8ausT+ehgKtHSKDX/rodC1Hd2WaNPRCO9B5iEcv2eeeAzvWFOHiCYxL3L/Qn655qpGNPO01J8a02nSc553kPPE5x94ap23yQ= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com; spf=fail smtp.mailfrom=nvidia.com; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b=BPalbaSf; arc=fail smtp.client-ip=52.101.201.59 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=nvidia.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b="BPalbaSf" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=FqhNoj49/qRwNII30w0oEcGjsDbiLGmWjUsyfCvWjiomh8wahi2zmp9ZPFellV2YEQF+zm3qH2DUf8YI7e0tCLSb/KXfsXeA4lyJlma0tw3rtFK0S7mr+ZlaAx1ad8CLzeNKZ3pbAsszmn4mtL7NJI49uo7TH7uKMkriFUOVijaizai1GzvA+cx7OexG1IM35RdBdc6RJjmhf9ZnlZ7PUT1eMc06wVlwdQzAfRm9Eyoce+/hSL2oYk00k0D522TGfF/pKC4WQmC5vCzIpw6Eiz/P6b0OXte63JOYW00GrUiqKoqcdG5nuemdSfcbN7PCoOapnhHbwhBYKqFzArqX3g== 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=u03ONxPYKfKnAR15K8uSlEqYVMj6IuyVyPSmp+8yqGw=; b=nbEx2wmwERJzI0s11zyCdpyrHBaok4/ytmxpvFemuQdAfzslC73MewjLvD+Ri5XrW7fFCx+VsKL5TC/yy9fwysuTTVJYSli1/2XDAtv2yKs8nxBVqoxbAC5Qa+Tkh72kp3DPM6OoaE1tXD/fEgaL+CAXh2VOpC/VUmmoLtvmmeaXsFBd7BBs1mRMVzNhGrLDPMpy0K8lhheMzTXWPLmC0Ma2wkF6Yg9RSxPfoj1NVCpz+snuBTPwQ5JD387eqkfzvjAn7MjGUda6jU7R6T4rQwIgOIFe1AeeYPECwR7nbh24wnffn3kwRJN162YXhe9JRpLKMY7PelSacJbfwWVhRQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 216.228.117.160) smtp.rcpttodomain=bootlin.com smtp.mailfrom=nvidia.com; dmarc=pass (p=reject sp=reject pct=100) action=none header.from=nvidia.com; dkim=none (message not signed); arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=u03ONxPYKfKnAR15K8uSlEqYVMj6IuyVyPSmp+8yqGw=; b=BPalbaSf4H8tMvK1GM+3QRFwq3BBcTxys0cdi9PMLLtZ6hKm3PZCACTDnFIdbOzHB7G/RZ7/sKpEq++NsMvb6x62zgNhHYQpm5/L7buNB3u1N+S3kHE/8tiL2rS9AH8Fopt7o7FIyra64O9PnwANnP9OjiyJBLwhprbWPGx+aqF3GGGG/Or7As/kLFocHaQwbRcJcP18ZoH93WhP5HqHYS+n6Kzs1x0pmCZBNaz7d3S4IxrVF7icJJ/nP6viK2H79ScyN0ZY9zKmXfM2NTjV1xx5EDuWml7k/aOKILU0mEkU34RIOcyn24V/WxAooRJkT9OdYwMhb2jRZyYq+y9tkg== Received: from BN0PR04CA0197.namprd04.prod.outlook.com (2603:10b6:408:e9::22) by CH3PR12MB8852.namprd12.prod.outlook.com (2603:10b6:610:17d::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.270.18; Tue, 4 Aug 2026 10:13:52 +0000 Received: from BN2PEPF0000449D.namprd02.prod.outlook.com (2603:10b6:408:e9:cafe::3b) by BN0PR04CA0197.outlook.office365.com (2603:10b6:408:e9::22) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.21.292.16 via Frontend Transport; Tue, 4 Aug 2026 10:13:52 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 216.228.117.160) smtp.mailfrom=nvidia.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=nvidia.com; Received-SPF: Pass (protection.outlook.com: domain of nvidia.com designates 216.228.117.160 as permitted sender) receiver=protection.outlook.com; client-ip=216.228.117.160; helo=mail.nvidia.com; pr=C Received: from mail.nvidia.com (216.228.117.160) by BN2PEPF0000449D.mail.protection.outlook.com (10.167.243.148) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.292.8 via Frontend Transport; Tue, 4 Aug 2026 10:13:52 +0000 Received: from rnnvmail204.nvidia.com (10.129.68.6) by mail.nvidia.com (10.129.200.66) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.45; Tue, 4 Aug 2026 03:13:38 -0700 Received: from rnnvmail201.nvidia.com (10.129.68.8) by rnnvmail204.nvidia.com (10.129.68.6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.20; Tue, 4 Aug 2026 03:13:37 -0700 Received: from build-akhilrajeev-noble-20260602.internal (10.127.8.11) by mail.nvidia.com (10.129.68.8) with Microsoft SMTP Server id 15.2.2562.20 via Frontend Transport; Tue, 4 Aug 2026 03:13:35 -0700 From: Akhil R To: Alexandre Belloni , Frank Li , Adrian Hunter , Akhil R , , CC: Sashiko AI review Subject: [PATCH 3/5] i3c: master: Do not release the addresses when reattach fails Date: Tue, 4 Aug 2026 10:12:59 +0000 Message-ID: <20260804101301.2975911-4-akhilrajeev@nvidia.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260804101301.2975911-1-akhilrajeev@nvidia.com> References: <20260804101301.2975911-1-akhilrajeev@nvidia.com> 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 X-NV-OnPremToCloud: ExternallySecured X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BN2PEPF0000449D:EE_|CH3PR12MB8852:EE_ X-MS-Office365-Filtering-Correlation-Id: d6f44d16-d1b3-4ed5-cc19-08def211159c X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|82310400026|1800799024|376014|36860700016|23010399003|18002099003|22082099003|11063799006|56012099006|13003099007|6133799003|10067099003; X-Microsoft-Antispam-Message-Info: hsDDr8wYDn4T8OE4+O/RHd+0E3zL0vULA7d8/xlMEUnnMkjIbN2ST+3evBmAIWfPgi0MZX1d3yjgIrVRboxKAsDeMHBx2nDtRiEAcUCd0pyGAKT7awt9n5SH87PQtL7NuXa+TuKkCLipbyD8mf+Rk5uI3tsGX1ZaibroivX8n2HtOsRXk/EOA4teT6/agPfCjzZgO5badi5Pg8R0LGP2XDv9/VVog+6yCgZTJaEG5I9Pl5oGk004zoCsDl0FQYuvkLDtZeYbulThD/Z2N2RGjB8p9k5bLJYAN+DKl2fV9XjPD4x8gBQwI3tqAat3mXCrF7FObz6srkd1Ge0rSYJg2ihwXuWFpSTf28WgSkwFpf9i2TBpJ7IaVcJgvrpsO6eTbDEXmfe6/zY9JtOo8YBHjSljZ5YRu3CytL+NVmao0Wm7pC/LgURXstWm7MJ0Da6/Sx4g3mu5nVmmLkceeRb9eZDDryKBPdAI7s1c3cNAUmU/vXlhAVZFh01Snhuy1OgVWSfe8rrVpVV0ti2Bk8WZxxM9gbvuqrU+rg64Ctz/x58Hp2opdWY71n+2I2lR8gB3EYFd2uxjtHx8+707poYaRdvQhenU6Q4D2OxhWx2P0g0INt9N/fEaGrSTWxep6mjdrsFoeedStGSmvsxRoA0QrnyMa8Ds+EgZFe6FlB2QYZicqSAITRl2exmDTnR5zNH89B5UAGuEeaP9/H4l/vU5DQ== X-Forefront-Antispam-Report: CIP:216.228.117.160;CTRY:US;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:mail.nvidia.com;PTR:dc6edge1.nvidia.com;CAT:NONE;SFS:(13230040)(82310400026)(1800799024)(376014)(36860700016)(23010399003)(18002099003)(22082099003)(11063799006)(56012099006)(13003099007)(6133799003)(10067099003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: fd9i1qI2SNjgpLzHwSusSVfVfODgl+AaCeQe8tMWR2YcW8eiSXflGbwzAt0FGth/cyrkvjj/8kodSfDdxXnK0oleYx61Q1OrjXvUWfNz40gxjkEI93J2U45Hl6yF/SvjWwDpssaFQkiDIhw9YX4NX3nY0l0gPBX/1WSOW5+7095kWwYI5ZP2DYyX3fzeEe4WwlYj+S7ovz2fCr4IkvwG5kWr84zLtXCgzN/4NIcUYSc85sYvYm9OWTkNL4UilYthw+ixMPCLizfrTyEtulFCzZFhq+LJ9hadOAvtAwOVwEqh5UkunbwUYbqCXj2xnzAnQJbrBFLaeXW9waxWWK08kiZ4EqGfZKNC0sDCm3nizGf+rl+kpoyzGMssVK7BALRXQ/ytBrn2/BaX6nni4NH47A8OJD3pon7bmpLKPkbrqFjEJ6MRDUUTjJMpFjYWv1Ol X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Aug 2026 10:13:52.2293 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: d6f44d16-d1b3-4ed5-cc19-08def211159c X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a;Ip=[216.228.117.160];Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: BN2PEPF0000449D.namprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH3PR12MB8852 Content-Type: text/plain; charset="utf-8" i3c_master_reattach_i3c_dev_locked() releases the address slots of the device when the controller callback fails, even though the target keeps responding to its dynamic address on the bus. i3c_master_early_i3c_dev_add() cannot take that address back afterwards. It jumps to err_rstdaa to reset the target, but i3c_master_rstdaa_locked() only accepts an address that is marked as assigned. It rejects the request with -EINVAL and sends no CCC, leaving the target responding to an address that the core considers free and hands out during dynamic address assignment. i3c_master_reconcile_dyn_addrs() ignores the return value, so the device stays attached and in the bus list at the address that SETNEWDA just assigned to it, while the core is free to give the same address to another device. Leave the address slots to the callers. Those that cannot use the device any longer detach it, which releases the slots in i3c_master_detach_i3c_dev(). No in-tree controller fails its ->reattach_i3c_dev callback today, so there is no known trigger for this. It is a robustness fix for the error path only. Fixes: 3a379bbcea0a ("i3c: Add core I3C infrastructure") Reported-by: Sashiko AI review Closes: https://lore.kernel.org/all/20260721043058.C02B31F000E9@smtp.kernel= .org/ Assisted-by: Cursor:claude-opus-5 Signed-off-by: Akhil R --- drivers/i3c/master.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/drivers/i3c/master.c b/drivers/i3c/master.c index 568788e4cdb5..23557ca2df68 100644 --- a/drivers/i3c/master.c +++ b/drivers/i3c/master.c @@ -1944,10 +1944,8 @@ int i3c_master_reattach_i3c_dev_locked(struct i3c_de= v_desc *dev, =20 if (master->ops->reattach_i3c_dev) { ret =3D master->ops->reattach_i3c_dev(dev, old_dyn_addr); - if (ret) { - i3c_master_put_i3c_addrs(dev); + if (ret) return ret; - } } =20 return 0; --=20 2.43.0 From nobody Fri Oct 2 06:58:29 2026 Received: from SA9PR02CU001.outbound.protection.outlook.com (mail-southcentralusazon11013053.outbound.protection.outlook.com [40.93.196.53]) (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 32DE1468C18; Tue, 4 Aug 2026 10:14:06 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.93.196.53 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785838450; cv=fail; b=DKEQfd5B/yy6fdneYX+N2DAAtdT0DaLjauMjSJf/R+d6ckg0f+WAh0UnwZ0eHFM6GkuVIst7GwzqvrnKJrO+xNqrUz+Skmj8lTBTnoDWfYei3hQBUhAJwKbbn5M6qnMagXCD94Z2RKC77KZPrk+edf9XwEbJ02pS9fW9j/NcOTk= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785838450; c=relaxed/simple; bh=wTQoOVCJLqSQ0wLKlHscB7f5O/MeHERWrWCozgWRcNo=; h=From:To:CC:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=jtrHN9QzbgxNt5+OuKAELtS0223FN3kZ0HvWUiXUchJszZ91dc+6QJNvQKWTQNUtbfEmLdYA8FkR7jaC+iWS/nk9q3ARBoHB046tTNNDJhjlvadFTQaK8h8pX1vzS4cxqY5/FJJ2Gcgpb1usSwPssiqwOcSIZjXlDYl55Fk7gG8= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com; spf=fail smtp.mailfrom=nvidia.com; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b=XH1LAmOC; arc=fail smtp.client-ip=40.93.196.53 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=nvidia.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b="XH1LAmOC" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=KR0WuiEd/E9Kd0mf2W+KTq/HeJZ2OqDdOM2Y2AZw3li+6tfMqiiKvmlSg6wh+YRYVrM902LEQaZGnP2022HbW9nI6ednR6/jLZ0cTUUbAh9MrdPn2RlEQca/L+HDEFXz/F5kItA1X3XfUxvpt33ccy0pCfDgX53l8OuWl5feC9gIQSL7a0WSBPxiNhBHQSUoht+reHSDsyZTdWoOhKTtDRawidJZ6OA4i+cDJEadpMSliLQJmsIMRFsIdQJ5EyklJ8xdUC5WYxknA4d/9v/4kWAoZT8xjaJe2izl11xAQfMc6/ZWbF1I3ZZtK6/EZX7tjc8lEcGkylEScpNmM51UIA== 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=lA/fIyErFHdNx0Zs2P85YoJHkeYILoXQ+OFFla5TWh0=; b=yFZw/LlCoBc0DqvFPv1j1hidE1A/o1zgueuXjVUNie6MNo2CyL+uXgYbBHzNszWQTJhYB5ig2nNyHuwgqTQAb6IHlhycXp9l8rxOfIUdObK8+dcEf6LWOxu/x0TO6tpDBVAxRg5xSWVBHuuSFd8yRKYHW1/iSG4mneh0t/GUjX6UBSTDaI/ejOUgWM/aSKTTya7ZIqoLqfB+KLw/fiqjjsxO07BKhIZDT4aUaoh/c1ClfPQq7pw/VdhNTDHL4k2JB3hvjrHtutAO/wRdYmN4yCmnW6pRzMRqjo/KosnJXBKC6ANlDGoToSJDdrXtYNoYASM2B5mQ9d+vbgVUNpfN4Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 216.228.117.160) smtp.rcpttodomain=bootlin.com smtp.mailfrom=nvidia.com; dmarc=pass (p=reject sp=reject pct=100) action=none header.from=nvidia.com; dkim=none (message not signed); arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=lA/fIyErFHdNx0Zs2P85YoJHkeYILoXQ+OFFla5TWh0=; b=XH1LAmOC+43JLGIy8+ivKOu2slmnKI3/PnyNpNBEr7cG+9rv1QpQQeWu4eu+EQQUxqLarqN/9CC+fTp2pbbP2f2KUn0EnADJT+qcZiVzvR95MaJoY2TxeYM0depdRK46NQHpUcNhNMLA9/ZDr6K/cLl25PhFf/YQ+JI5JCRZQZcgHp4TfCU2LteZPZpl26hMNjEKrrbE/iUTs4H6P/k+DCWLsPnKzZry++87eFCuV2SEnSNIRzZ+JEDXSk7OEHvYy3scNviWMbO6+XXfYiEBFyeOzslIHhNQv9Ev1STiB5uKVROnFlwPvFOf3exD4VNQ2J0NedNmKT77tuy6KSFfug== Received: from BN9PR03CA0089.namprd03.prod.outlook.com (2603:10b6:408:fc::34) by PH7PR12MB7020.namprd12.prod.outlook.com (2603:10b6:510:1ba::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.270.17; Tue, 4 Aug 2026 10:14:01 +0000 Received: from BN2PEPF000044A3.namprd02.prod.outlook.com (2603:10b6:408:fc:cafe::80) by BN9PR03CA0089.outlook.office365.com (2603:10b6:408:fc::34) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.21.270.18 via Frontend Transport; Tue, 4 Aug 2026 10:14:00 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 216.228.117.160) smtp.mailfrom=nvidia.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=nvidia.com; Received-SPF: Pass (protection.outlook.com: domain of nvidia.com designates 216.228.117.160 as permitted sender) receiver=protection.outlook.com; client-ip=216.228.117.160; helo=mail.nvidia.com; pr=C Received: from mail.nvidia.com (216.228.117.160) by BN2PEPF000044A3.mail.protection.outlook.com (10.167.243.154) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.292.8 via Frontend Transport; Tue, 4 Aug 2026 10:14:00 +0000 Received: from rnnvmail201.nvidia.com (10.129.68.8) by mail.nvidia.com (10.129.200.66) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.45; Tue, 4 Aug 2026 03:13:44 -0700 Received: from rnnvmail201.nvidia.com (10.129.68.8) by rnnvmail201.nvidia.com (10.129.68.8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.20; Tue, 4 Aug 2026 03:13:44 -0700 Received: from build-akhilrajeev-noble-20260602.internal (10.127.8.11) by mail.nvidia.com (10.129.68.8) with Microsoft SMTP Server id 15.2.2562.20 via Frontend Transport; Tue, 4 Aug 2026 03:13:41 -0700 From: Akhil R To: Alexandre Belloni , Frank Li , Adrian Hunter , Akhil R , , CC: Sashiko AI review , Subject: [PATCH 4/5] i3c: dw: Do not use OF match data as a quirk bitmask Date: Tue, 4 Aug 2026 10:13:00 +0000 Message-ID: <20260804101301.2975911-5-akhilrajeev@nvidia.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260804101301.2975911-1-akhilrajeev@nvidia.com> References: <20260804101301.2975911-1-akhilrajeev@nvidia.com> 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 X-NV-OnPremToCloud: ExternallySecured X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BN2PEPF000044A3:EE_|PH7PR12MB7020:EE_ X-MS-Office365-Filtering-Correlation-Id: 835cf45e-c8a1-4ed3-7f70-08def2111a6e X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|82310400026|376014|23010399003|1800799024|36860700016|13003099007|22082099003|18002099003|3023799007|11063799006|56012099006|10067099003; X-Microsoft-Antispam-Message-Info: c207WugExjtol4YtYuUgF4MveRTtUCVGtO0T0QnFXINkErGZPvi4rrRjky5Aj4+Wpn0dZ3iqq6Amo2EvdBd5M17iBhDJKsdbEByOOaeITnmL+eGOr6wAjf1dQJxiORNFvAXU349jqdYOnuZM1+NNph51wCd90LuS35+Baf7AvrcXyKLq+HNcM5nfhfxDADzuq2Ho2fZEonQulxOEuEnAvvKeWvu034UqE9OjDqTmlOcAf/DJ/Ch/p2xEFCLS9R8a23EGFO4CznA9nqApv1vdZsAkJtZB3nIhQAg90HIVLukjhWw1oRn7wfMPI/Cj9RHB8QyfQLZ/WTZOe/FAGllryr+Pm93QxATNtjA9Ki8ia2fqyaQKNKjpPtu35n+7Ef2vxsVIMNNzvcwZ4eikjWj2YGcx487oXoTXcqEq9PyjApt3h9SiGHAJqkPM/+1P7b0uPZZDleQEb/bGZgLt9vze5J3O/oCYzPQtBIAuHCKLWbnYv7JhNlau6cnEyIGnHog4pSLx2tvPT0d5slrc7xu5OEC40v3fgzxspmaONpYdPPZss/wXYPPaFESBOAF2HRVHM1IMJ4TsPdXPUN78D8xFkUbUAeTwnresWWq6H2/6bva6I4ab4RuIA85++19KAiJV/QyzEK5hO+OL3j99Af+Buk5+zu692+mbMdJWoG8XMrsTqcSMyalxAL/dhsKEpFGGmT++1v96qSIcPxPAF+BbaQ== X-Forefront-Antispam-Report: CIP:216.228.117.160;CTRY:US;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:mail.nvidia.com;PTR:dc6edge1.nvidia.com;CAT:NONE;SFS:(13230040)(82310400026)(376014)(23010399003)(1800799024)(36860700016)(13003099007)(22082099003)(18002099003)(3023799007)(11063799006)(56012099006)(10067099003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: WMqk69oUjcFPM8ScIQLNx9xj+cz7viyEziIMIgvI4lzEjvJlCV1giiw8Miaplz64nzfmHdfi5MceFovxcSGKh/YSrzv1I93KIhlhg59rHHaYifxTSSHZuNV0WNKD60Q3XR1GEuuNHI9k0z+UuS+UebBudicxUo57qRBd8P8tA15PvIlOhXB4JrOQFDrAXRyhxRXnzJACjt0FFIHmm9ewFm+sGl/LM7Oban62g8PLFpGH6nGfq5s01dZ6bXElVMlvBDB32PTP8yzIddBS91Qq7GeYWkR955ihbp1H13AwgwHJ6ONIT3rlHiECIzV7bHaxG1qSTbjrjLEHJUjlc4UrdH8nS956i96qc+zFlZp+5fYow+W5q4YGfEkPBN4bvPLOJ7uYSd6SbxxuAiA1Y9JQDQMwDV+58YOtHcR3ShnCa+7xsDsoLIFXvFZ7VHUckWfV X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Aug 2026 10:14:00.3228 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 835cf45e-c8a1-4ed3-7f70-08def2111a6e X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a;Ip=[216.228.117.160];Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: BN2PEPF000044A3.namprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR12MB7020 Content-Type: text/plain; charset="utf-8" dw_i3c_common_probe() takes the match data as a plain bitmask of quirks whenever the device has an ACPI companion, and as a pointer to struct dw_i3c_drvdata otherwise. The two are not interchangeable. A device that is enumerated from ACPI through the PRP0001 device ID matches the OF table, so device_get_match_data() returns the drvdata pointer of the matched entry. Casting that pointer to unsigned long enables whatever quirks happen to line up with its address bits, for instance disabling runtime PM or skipping the clock and reset setup. Look for a match in the ACPI table of the driver instead of merely testing for an ACPI companion, so that the match data is only read as a bitmask when it really came from that table. acpi_match_device() returns NULL when the driver has no ACPI table and when CONFIG_ACPI is disabled, which keeps the ast2600 driver that shares this probe on the device tree path. Fixes: fba0e56ee752 ("i3c: dw: Disable runtime PM on Agilex5 to avoid bus h= ang on IBI") Reported-by: Sashiko AI review Closes: https://lore.kernel.org/all/20260728071757.5B3CD1F000E9@smtp.kernel= .org/ Cc: stable@vger.kernel.org Assisted-by: Cursor:claude-opus-5 Signed-off-by: Akhil R --- drivers/i3c/master/dw-i3c-master.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/drivers/i3c/master/dw-i3c-master.c b/drivers/i3c/master/dw-i3c= -master.c index 3816a50a52cc..17e1dd4fb5f3 100644 --- a/drivers/i3c/master/dw-i3c-master.c +++ b/drivers/i3c/master/dw-i3c-master.c @@ -5,6 +5,7 @@ * Author: Vitor Soares */ =20 +#include #include #include #include @@ -1610,6 +1611,7 @@ int dw_i3c_common_probe(struct dw_i3c_master *master, { int ret, irq; u32 thld_ctrl; + const struct acpi_device_id *acpi_id; const struct dw_i3c_drvdata *drvdata; unsigned long quirks =3D 0; =20 @@ -1618,9 +1620,10 @@ int dw_i3c_common_probe(struct dw_i3c_master *master, =20 master->dev =3D &pdev->dev; =20 - if (has_acpi_companion(&pdev->dev)) { - quirks =3D (unsigned long)device_get_match_data(&pdev->dev); - } else if (pdev->dev.of_node) { + acpi_id =3D acpi_match_device(pdev->dev.driver->acpi_match_table, &pdev->= dev); + if (acpi_id) { + quirks =3D acpi_id->driver_data; + } else { drvdata =3D device_get_match_data(&pdev->dev); if (drvdata) quirks =3D drvdata->flags; --=20 2.43.0 From nobody Fri Oct 2 06:58:29 2026 Received: from BN8PR05CU002.outbound.protection.outlook.com (mail-eastus2azon11011045.outbound.protection.outlook.com [52.101.57.45]) (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 517C546A603; Tue, 4 Aug 2026 10:14:15 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.57.45 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785838459; cv=fail; b=TLqa7pbF4Lx53qT8oi0XONnXUE5en1OTYd8XZlZgGNihlxVwHj78rZq2Djula2oK7bw0AcpKHILfQnsY5kuLYGEMCJgResEaPxqtn/v6d4tGsESQpBgj727y/e8kYB+Gwx2Nk99GtbY08LBHpBwSe13w5tOyWgp8f1C0H/soCZc= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785838459; c=relaxed/simple; bh=Iensk0F5/I00Oz+lUVszG7FuDmmf8NxEpcNwIkJOcUc=; h=From:To:CC:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=gSzXpyO/yWVxIdTIpOdWIJxx4Ls/RO3pCiLIViBiGUkjnQ/e04/KxUelUq+aCHLeeeEFMMzty1Swfz7QVd9YwAGDcO3nyYCg50Q+0r/Kh0tWhGxBA2yh8LfURY0s7vV8Xj6CTq5ntK0IlTTZm71ca+Wn25NbN8lJHMkqi51XKyk= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com; spf=fail smtp.mailfrom=nvidia.com; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b=e50o08xi; arc=fail smtp.client-ip=52.101.57.45 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=nvidia.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b="e50o08xi" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=sfTSiunT9ho5XOtQ0pAc9tZYdyYBJOetTg6Ha110vh/WOfulh4x5stDui8zB/BB541PyzXzF7pAgxt+FgR3TInefgNd0SapZUNRvYw9UL9K8sXuOwDTsA4PRHKbDtvq57oOVHzK5NLauN9x1qqjmpI5QcRVnT91Nea+e5JDegjkHN2Eq6y4VjBROQvjfyNxK1no+bluVKVZXEbZr40+0KZ03iU3dKEHYqf1HnQsp+a25LqzqTW1aMBqxyvHb0a+fsXow/pMUNSi6fpLTEe/ZmlB2HzJZbY6AcRznuwGcTd2uCXDZD8lM3pqVRiobHbXa3JiNyafIvPUPIa9g2ohN4w== 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=iuFK8CN/P8iK0SzNQbj8g0zy5MbRNkWrrz5kBJWEM0A=; b=eZTY1neuBDaW74uxwTutpIh6yHIx/g+cmgB+2T3xqHT/gaYZ9hp9r8Y8IZzTnchHoYfgmEtYoPPW/t9HvqJXJv5rSdPNOEArYWkrOc4LAbqoTWV3yZyK7CvCIy7N0H/Trc0ekxjkj2/wl8wutFUEo+9QYEQ33Y2m9Bj36ZWUxDJB0GVGO6e8M30hggsyRutLLV/XQoUtgqre+ji10ioMIZYdZ80hPFH24k3CgcXSGeys0IxSi+fCg6Zh6CrQg5f/KjhvRtqTInd8Xt5HljSozuRQRKPBgUSXamlGGoGB7Two78HbEtV40LppN8ot3BboGBwAMqf9AIe4vB6JWuaCxA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 216.228.117.160) smtp.rcpttodomain=bootlin.com smtp.mailfrom=nvidia.com; dmarc=pass (p=reject sp=reject pct=100) action=none header.from=nvidia.com; dkim=none (message not signed); arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=iuFK8CN/P8iK0SzNQbj8g0zy5MbRNkWrrz5kBJWEM0A=; b=e50o08xi1SLecXjYlJzZxfDKYclK94SvM8cbT9rJAO1/mTMusO+0FfcfwJg9t0+lFtot+v05Z9TPAE1BGIfOZFSvvdwGHItDN69rX6B0KQmC+wCNSL97M3YWExSWCB4U6M0K9VjiTj9sxHl+IheowpkM5dxoXd1VoORHsXn6ESSRsfDnY9k1YUt6hwfUaN0T6GFt+So6Yerlx87WJoK6pW9Gs2QI3Z3qw1h+X/FKpVE65f/sek92IwZp0n07FNL1oXpcrX8hOgDlFy/uqTSSO3e6VXzp6neex4pbiIi4eJH0ILyjaMjhz8568ZO/rWwmb5nPym+BG7qxLqYISTJy3Q== Received: from BN9PR03CA0066.namprd03.prod.outlook.com (2603:10b6:408:fc::11) by IA0PR12MB8839.namprd12.prod.outlook.com (2603:10b6:208:493::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.292.15; Tue, 4 Aug 2026 10:14:09 +0000 Received: from BN2PEPF000044A3.namprd02.prod.outlook.com (2603:10b6:408:fc:cafe::7b) by BN9PR03CA0066.outlook.office365.com (2603:10b6:408:fc::11) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.21.292.16 via Frontend Transport; Tue, 4 Aug 2026 10:14:09 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 216.228.117.160) smtp.mailfrom=nvidia.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=nvidia.com; Received-SPF: Pass (protection.outlook.com: domain of nvidia.com designates 216.228.117.160 as permitted sender) receiver=protection.outlook.com; client-ip=216.228.117.160; helo=mail.nvidia.com; pr=C Received: from mail.nvidia.com (216.228.117.160) by BN2PEPF000044A3.mail.protection.outlook.com (10.167.243.154) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.292.8 via Frontend Transport; Tue, 4 Aug 2026 10:14:09 +0000 Received: from rnnvmail202.nvidia.com (10.129.68.7) by mail.nvidia.com (10.129.200.66) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.45; Tue, 4 Aug 2026 03:13:54 -0700 Received: from rnnvmail201.nvidia.com (10.129.68.8) by rnnvmail202.nvidia.com (10.129.68.7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.20; Tue, 4 Aug 2026 03:13:53 -0700 Received: from build-akhilrajeev-noble-20260602.internal (10.127.8.11) by mail.nvidia.com (10.129.68.8) with Microsoft SMTP Server id 15.2.2562.20 via Frontend Transport; Tue, 4 Aug 2026 03:13:51 -0700 From: Akhil R To: Alexandre Belloni , Frank Li , Adrian Hunter , Akhil R , , CC: Sashiko AI review , Subject: [PATCH 5/5] i3c: dw: Resume the controller before unregistering the bus Date: Tue, 4 Aug 2026 10:13:01 +0000 Message-ID: <20260804101301.2975911-6-akhilrajeev@nvidia.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260804101301.2975911-1-akhilrajeev@nvidia.com> References: <20260804101301.2975911-1-akhilrajeev@nvidia.com> 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 X-NV-OnPremToCloud: ExternallySecured X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BN2PEPF000044A3:EE_|IA0PR12MB8839:EE_ X-MS-Office365-Filtering-Correlation-Id: 7883ad75-2f61-4e8a-db3b-08def211200b X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|36860700016|23010399003|376014|1800799024|82310400026|13003099007|10067099003|56012099006|22082099003|18002099003|11063799006; X-Microsoft-Antispam-Message-Info: 9mlw/99ABzjJ7aWPoWyN/519WkNubC3eE79QJzGzJWC1M5N+qAhJSeox4KjBmBz+v2t4RN3dIxLmK/78GZrltYUQeSWRM6dLed/k6VD0Redi+jn7wgkyjNsa9DK1Q2rFct+J+E4apJOIpHUSbqtCVASKcTgkxM8HdplvYOBU8lkgMEyqaotPhJmhLHFZCeNxXMHqpR3dqwi6ZWfvYu72b+QeoOm+ZFpIyil2gtnBPowdbGrnOHgy/8QdE30ErUZzIJ6nwQBoCTmmA2Keq0LxOOZAR+iFapuDNhmf0Hq0jz6uu4pHM1Yi6bTtj/7/y5B3o8Rsiw+N7qWFE2CGJJq0N2R6IOVuYDKSZsg77FITve0FSYGnvyZQu3YISQzh2BINShua4rlPJDzHGw/cGcnr2Ah4uD3HQK5I89Orgb4ryKe5PhrmhlhqnDqimkEiYF0UtYgrK+MzR0qXL5dEkynElyQNUIRw57SD7SjSDo/TiOcOIPMM0GUN3HdtSlROLwE6/dCQ83sAPVMF6CswOIjRbp/Jlr+Zzucp8NBNUKZDvCTDIUMQ+mDeLDdfH8W/xnS8hUK5z5LeJCr+GKAC1S36HMmJ6Q7mOnGR/jJ5WogCneX1N0jrdUD78JmmAw92UKMffwX+6EwFMtv6DSBWtvPVTlMKedgLQwyPtzC2inP8c35SljyDcguVLrDmgquq2DYg3GLTEe3abevIUQHv3p7hNw== X-Forefront-Antispam-Report: CIP:216.228.117.160;CTRY:US;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:mail.nvidia.com;PTR:dc6edge1.nvidia.com;CAT:NONE;SFS:(13230040)(36860700016)(23010399003)(376014)(1800799024)(82310400026)(13003099007)(10067099003)(56012099006)(22082099003)(18002099003)(11063799006);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: R3yNDz3F8RjvFx2JRnQFhXL4nf/Vddp0ZUIVpy8I1x6lDg2Exx6NIsDVdacu4gRorOLkcdAsEMS8xINkvjsJHb9Hra6NhgP9kPbGmsJYIiyzgw75IgHgUsOPVgmVZoRBJsMM7iqWIrvuX+axANlWXXVgCJi6qV/37yldftVERqH4VET8gKxXOX9U1I4MNPWxWiWmVcKbIunjujo+YGcfobMtrzll3wzjXnFimHlxAWmJ5uM8fDdB0gTBCXnlaQB9PLHrSmvSMlnyAL5cmcJvIh2dtX34JacP2oCQC2EwKvDFAUuxCDlWNX0zYYSGKxMI7uPg0flIzopj3gEhEjmTIOQ5EF4ZnPfyb+9ofWBV6ezL5Mz79ftCbplCpFQAR8BkprYvPnh77YbyU+wl0C3oDofzct33KWtzHppW9//RFcgHDUR5hgClfCA4V93m3bXq X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Aug 2026 10:14:09.7212 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 7883ad75-2f61-4e8a-db3b-08def211200b X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a;Ip=[216.228.117.160];Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: BN2PEPF000044A3.namprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA0PR12MB8839 Content-Type: text/plain; charset="utf-8" dw_i3c_common_remove() unregisters the I3C bus without resuming the device first. i3c_master_unregister() ends up in dw_i3c_master_bus_cleanup(), which writes DEVICE_CTRL, so unbinding the driver while the controller is runtime suspended accesses registers with the clocks gated and the reset asserted, which hangs or aborts on most platforms. Resume the device around the unregistration and drop the reference before runtime PM is disabled, so the clocks are running for the register accesses and the state stays balanced. Fixes: 62fe9d06f570 ("i3c: dw: Add power management support") Reported-by: Sashiko AI review Closes: https://lore.kernel.org/all/20260728071757.5B3CD1F000E9@smtp.kernel= .org/ Cc: stable@vger.kernel.org Assisted-by: Cursor:claude-opus-5 Signed-off-by: Akhil R --- drivers/i3c/master/dw-i3c-master.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/drivers/i3c/master/dw-i3c-master.c b/drivers/i3c/master/dw-i3c= -master.c index 17e1dd4fb5f3..df542ab7744b 100644 --- a/drivers/i3c/master/dw-i3c-master.c +++ b/drivers/i3c/master/dw-i3c-master.c @@ -1723,8 +1723,20 @@ EXPORT_SYMBOL_GPL(dw_i3c_common_probe); =20 void dw_i3c_common_remove(struct dw_i3c_master *master) { + int ret; + + /* Unregistering the bus accesses the controller registers */ + ret =3D pm_runtime_resume_and_get(master->dev); + if (ret < 0) + dev_err(master->dev, + "<%s> cannot resume i3c bus master, err: %d\n", + __func__, ret); + i3c_master_unregister(&master->base); =20 + if (ret >=3D 0) + pm_runtime_put_noidle(master->dev); + /* Balance pm_runtime_get_noresume() from probe() */ if (master->quirks & DW_I3C_DISABLE_RUNTIME_PM_QUIRK) pm_runtime_put_noidle(master->dev); --=20 2.43.0