From patchwork Fri Feb 28 07:17:19 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Peng Fan (OSS)" X-Patchwork-Id: 13995806 Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on2061.outbound.protection.outlook.com [40.107.21.61]) (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 25BE91BC09F for ; Fri, 28 Feb 2025 07:18:26 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.21.61 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740727109; cv=fail; b=BkE8h92MuuPM5mKGUJ1j6XoBqpazuArsxr++Ogc34SNApMC8ko4JeHUdDR/zNgq9z4aDyKT4USXg9wGwWl/whnTjEdWvcf5IrI5pTjVrVxh2i1xO0GmUU8Igg6wr9s508KiqH+O8cscDVfZ7CCAAjo/4xkKesAe6gxF5c5+cEAQ= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740727109; c=relaxed/simple; bh=YYMxUWKJCZ5vn7scW6G7tPKpsyyj9kl7xXyGX32xtAs=; h=From:To:Cc:Subject:Date:Message-Id:Content-Type:MIME-Version; b=UCRZ6ALvuQJt+9ocyDQLPcN8vv/E/j+Vyh1C6lfV4l5MKTqSmd96cqIGzu5ArLjPdD39qUgOPqTfXSnS/J1G4bVzbg4cGOeJbGTCFUNOPCpugfd8V7oqUL572r75YIUb9ZfQPb0SnvPyk6cZ8qpQx7kIrPT3HxstJiYSBDRd7ig= 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=GyNZqINP; arc=fail smtp.client-ip=40.107.21.61 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="GyNZqINP" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=nKnvVLu+vEtCMNQJaIaXrdu4hTzdDUFc8+/CVgZhIR7eKVl8r/cxVF7sqCmzRGw1Eq1aVVp+6ReLCUYq42zsY6CkRWCaC6XLdD/88882BttaA0fUT+3RTGOLM/9EQ4mQxsrCF/DkKbrlCZTe4i3XLR1TSlCV2DoECHpyZlOoXcmW5skeoFGchqseLYGg69lj/aTUd/v1hpL1Qy92xgABsMtlYx3zuuppbKBZrfoMzB2uJN5bZhUdr/cw16b9VKXgVxyoJD2D4knC4lELgSV6bgiwo1xRDiga+SkYILnYV4HJnASAOiygpW5MhMocRfqXojF5wTshhLv6cfWTFutXTg== 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=zlIYcCBH/bNJp0ufj+/bA0t11S4KBsNYXHuzaBvJ4/w=; b=IZWxQ0mXwIYd7R1J1+YNjCJL7Fy8cW/5/6l/m7y2VOr7BQIJSCPElbyATs71alr9nQWzIWCUGrmChs19HF3+3KAdcBfW7rG2n516CE6akSXgPPlWUcf0Ye82hJniCjXmAmvd5dCAeZGZow8xlQ546Gbu4E6ZupQ9GSkCzX96U4Z9460QnXe/MMrYKLQMFWLIsSevJFeWUrkKfeGkBW0d5h/UU9+N4buu7E4kFCSV6GnhtClpnoxI4rrE24qWqi4GOAvPFeIOCWV/E3SALvn7wZRLA585lD02QgEWOzLLoaKhDYIaojhQ4IhxF1kXD0JoP0UUwJ+OJsQHy9dcoI6X3A== 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=zlIYcCBH/bNJp0ufj+/bA0t11S4KBsNYXHuzaBvJ4/w=; b=GyNZqINPBtcJk09cg8gNUGTxsyPl8xrZ9AzWOF7DgJTbRKTkr5KEWfD6Xzep11FlbrNjORLNm0sgWaVsBW56Dt2vK7c1ln4WhoI7P3l1QhZPFFwOifcC5cI8qlVWyHpV8AjTvVc5G+CLjirXNGRKYRWhUNkefDXJA5NYMQbVCMZgj487/Q4o6kMip0e0KQdnFf1yOuocNqp6lpSPg6We73GY8c5obKDmkt7ajrrtrHretoQzXdDy2VbNqgvueMVyU3h70j8GFH5kn7NxFgvs9naB9q3r1z2oafkPLwPGvaxN3fZ4YJ0ZJLue/FUVbbwbLnUurm9S+qUlujbJdRR6LA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=oss.nxp.com; Received: from PAXPR04MB8459.eurprd04.prod.outlook.com (2603:10a6:102:1da::15) by PAXPR04MB8511.eurprd04.prod.outlook.com (2603:10a6:102:212::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8489.19; Fri, 28 Feb 2025 07:18:23 +0000 Received: from PAXPR04MB8459.eurprd04.prod.outlook.com ([fe80::165a:30a2:5835:9630]) by PAXPR04MB8459.eurprd04.prod.outlook.com ([fe80::165a:30a2:5835:9630%4]) with mapi id 15.20.8466.013; Fri, 28 Feb 2025 07:18:23 +0000 From: "Peng Fan (OSS)" To: Frank.Li@nxp.com, vkoul@kernel.org Cc: imx@lists.linux.dev, dmaengine@vger.kernel.org, linux-kernel@vger.kernel.org, Peng Fan Subject: [PATCH V4 RESEND 1/2] dmaengine: fsl-edma: cleanup chan after dma_async_device_unregister Date: Fri, 28 Feb 2025 15:17:19 +0800 Message-Id: <20250228071720.3780479-1-peng.fan@oss.nxp.com> X-Mailer: git-send-email 2.37.1 X-ClientProxiedBy: SI1PR02CA0051.apcprd02.prod.outlook.com (2603:1096:4:1f5::6) To PAXPR04MB8459.eurprd04.prod.outlook.com (2603:10a6:102:1da::15) Precedence: bulk X-Mailing-List: imx@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: PAXPR04MB8459:EE_|PAXPR04MB8511:EE_ X-MS-Office365-Filtering-Correlation-Id: 98da5dbe-000d-4062-c840-08dd57c815c0 X-MS-Exchange-SharedMailbox-RoutingAgent-Processed: True X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|366016|52116014|376014|38350700014; X-Microsoft-Antispam-Message-Info: gkIkYq4SR9h46FFRnZy5k48sIVoB/tK+x5maaqY1mcq8adATSXHdgCxi6nACUttNZyc2Ql91cc+TyXXSVQaA9ZlNVE7Kmg5bVg6GClBM43cn5s7NNlgdhFrAael2BuyA5eRx5oCj+n3aae14tEcBBms1rSaCoY7pPOtag21XTEs5REtUS/Mw4kRaq7XM79RDy212EfFwNhiYrr8VBv9dU/mlBv4a+IKKXPnWQBC7SJjGq6ViwkeutFrEz+EzPSnz9um9ahd4vYfd4/uPQPjF/NaJKaOOzQerb0irt5BaggeBwd38/5OiPhWt/Oa1py1cFNqQV226ytiAuRCehFJ6F4Aogp3oLgI1GUrMa9pZyY9XiGJktLIQYa/tbV4u5P6NyrlePlmsDhGzjcEqKXBWCTreFSMP9KVPFJdP7BY1qNT1SDhDYxxV/MNeKH7ydfOsWIFls50SMxVutWEWmO7SZJcyDwJjsu0xVX8M2m5B5I3ItBlW/esQiE2JwOEFNAgjHRVQP29bcaObjqXn6cjonQGcWdAmwaieSl0rMZxkzmuudVOhFlYJI4SkhOQQ1RVdUBkf6Kt+BeTfVwIRjJwbfX9+Jfra1Ja9onKEox72XrJ4NCRFItNdk6hLDQEnIfuu5VLeLGHuqqig9Ozq42rcT+OlwL8fSov+/Lbo7asQpb8FMNu1wjwxDY/7afLyST2Dnbtgt5s34V48VzTd+g4zWGgcuf/d8cPyCF8rAh2YaIFNNxdskh/ac78oz5uVKK+jMjwZtNTz/FbFRHTMxpY5FuDKPVJFfqc7ZwNqV5qc2Cr01wqyfWHd4ysYzJrv6O3vlOKIyWJaKccBJ59op2YT/2LIHh5SxyizXLbPCbZn0DIkGS1GxYtW899sMdMM+eAgTdudW+sSLkWsAMz0oRi3q/RGUzzNRq9Mh0hLapTjPO0tVHxgv7X/I9cLTAM/25MxatO/MUiKwDMkU/rXP2IXKaQGkZ5f+X0IBbJL96P7uVMyo0ew1m03hDR4ToNCRl5XPgpmO4JN6p0xVuiY5uALOFRuOBSoZ9LNUpOiYTGKwDe0qf4v1L1qu615De6Bqj+raBbBBYLaGBAZ4Rb4snY9Pl/PUoi7EFAE6LtKPs1P7yBPSir9+MQ8wiRykCIwfSzmfov8H1dOBQq762rhxXW+0S7Ale51iiTLDYgA4fUu4pZlcpn1XqpgSAYjyO2+8p0HEYijnIo7eWAx3V2DgpL4zpcCFdV5BJjWLSMWRDJqZ3BhHbx+i3bOZJHWPt8y/AM0hShzLO3Jvb2Xf68XX7OZ9FdgCbvQPfMp81cs0Y1ZdU4eM2wJVIrVxWS4FjSo0IXLIu+az/Z3swTH+dWUZMZwVmPaJ1D/vmFaZjJEm8X5rDydq1gp0LqakGCgYljRJpcI5AZw86CsPIXLMuHB2OSTGxwWqZmVvah+kjZntqNyEoCuD4dfWTsN3oOZHbvqjE7G X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PAXPR04MB8459.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(366016)(52116014)(376014)(38350700014);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: IirA6fiTSEiQhMOOF1jjhu5VxK6RUHfTqo5KUp0rV4Y20J+EmxuHvsJf1QpBEXUfds9RS1zzu7ibQm4qGf6u3Qd53I33cn0KrOqrFRavm6X1p7dzP0sYZNdPfq5NBSycxHr5wevgwaPUNgyn9OtUwKCF1lSFN3FVGLXB5sKoreXnBx6r7nTwVjOsuYQUCPfEiVw+IfaPQY96i953ir6ilppff11QnJjfz3y1ZD97CqHaW1FqoTZspq7u6Vnmxq2m/+VPDamn/9DOXestWUN+6NkqfZ+osv27OBklL3a8h7P2IsK23iN1IiVZAeoeJwHlZfp+0UbvyjTRvDoJw5MtxqGTjWtUbBugEfxgdBFDve8/Tt/Z8XhfVIUSSaNmh7AosfEO9xg0HQQDfXW1g9gr3eHWz2wJQbs4hmxR6f/ypsSQprk54bGunVgfUewsEY+TsZ+1Hl/472n1MzdGLvEkg/5qyFvCF4xAr1xRtSfDoFI+z9yU2KMB8gDzHz2f/X3ecr0vC2jb6Vw/AqKSsmyDXr4wQy9TgOdDFgsFrpZjP+mKr0KkXfBgZLQiKxOUUzpO44Zn9OP0Fcb2Q5Ff0EUEloig/sRiw76nbSsOHnCVQZVF2wto0N1J83HakpjBbe4hN4uXCNgoOGgMZhW142C9ezpQgmBGH8q6UpvbNJYLQCX38BQwSrStbolWBEwqhDzCyJME2Li5QzsouQrYp4ATWMAoR1WQLXoAIRHFDNOIaZlEMyvu3/odTzmxTPSA0dHBajjUMqaVyF+QeC/mgCriEGHvVY+yQRszpblQew7gnIVUr5BsHdGlvTeBsfMPAIUfA4NuZ2mrTTtZrFg9YGo86vLeUb8ptPZSX4N7VALxS5l8DzfZbkZYIQBpcwy4YYcdpOeJvKOr+5EQpKpWOPeQnB5hXhjhGnWLfzqXRxgMbDkdYuh8eqcbD8cPLuigEBqLGEjH4QlPUzjcEKkbZZPTyDUlCE8i2G/cKDG0VXavRh1o8J83qlLLihtZIce+V4dAlFdNgM7t64BWc0vv2foLMkm8ih5ao8ThY3Y2fylhVsmobwH3pVRCY4ztKciP5dxAhvi0Z+kMDpKjPa+BTTq9Z1SxJ8/Cs/aRU7z3czA5AJaaeoDV9AfXlxVPE7tVYahanxDps+519ILv4IJM3U2eFb8CGUInCYkDWCHcQvJjT+Y5YY8PFD8O0ft6Hx7P2GNl2iCpoU/EbjQeUJn5FqparedQlffwxyHllzr2eMA8tc4BcvWPS0Z9a1RhYU7vjaJpP4fb+o8sZ3b67WtLDKuxlvjmEcMlJDYtfdR5tlQLmLyOovgjQxcGgZGhpldPwJ+4Qqpq1yKAW6Q+ghL1Eevx3xPHuJay9KdyX34T+dm1XShK9IpRln2GW/uKM4V9n1UV9OJzEl5cKzEzQrGo/Cr3DErJ9sjqsXalIRqmIBM9S79wSUhgjiTDNddZCNL3+icXgPqowkFrNlmMgIiscKRGPcr+Lk3zpwBDJJNyfffku9/RuGsI1QFw1d3V6Ui9eEm7bhAQ28gLc0C5dx2QwIUpsNMJhYpkUE+160N2Fah4sJkJjfDbbt3HoltfQqC4qtXt X-OriginatorOrg: oss.nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 98da5dbe-000d-4062-c840-08dd57c815c0 X-MS-Exchange-CrossTenant-AuthSource: PAXPR04MB8459.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Feb 2025 07:18:23.0453 (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: G0LibMGvMILOmXm0EZhqNtmQ/xxz+421T+50lvWs6hIErapTUbuI8ppnYmDboBnBYITp8Mc0f7gP8YISINpPPQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8511 From: Peng Fan There is kernel dump when do module test: sysfs: cannot create duplicate filename /devices/platform/soc@0/44000000.bus/44000000.dma-controller/dma/dma0chan0 __dma_async_device_channel_register+0x128/0x19c dma_async_device_register+0x150/0x454 fsl_edma_probe+0x6cc/0x8a0 platform_probe+0x68/0xc8 fsl_edma_cleanup_vchan will unlink vchan.chan.device_node, while dma_async_device_unregister needs the link to do __dma_async_device_channel_unregister. So need move fsl_edma_cleanup_vchan after dma_async_device_unregister to make sure channel could be freed. So clean up chan after dma_async_device_unregister to address this. Fixes: 6f93b93b2a1b ("dmaengine: fsl-edma: kill the tasklets upon exit") Reviewed-by: Frank Li Signed-off-by: Peng Fan --- V4: None V3: Add R-b V2: Update commit log drivers/dma/fsl-edma-main.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/dma/fsl-edma-main.c b/drivers/dma/fsl-edma-main.c index 760c9e3e374c..7eb4d898434b 100644 --- a/drivers/dma/fsl-edma-main.c +++ b/drivers/dma/fsl-edma-main.c @@ -802,9 +802,9 @@ static void fsl_edma_remove(struct platform_device *pdev) struct fsl_edma_engine *fsl_edma = platform_get_drvdata(pdev); fsl_edma_irq_exit(pdev, fsl_edma); - fsl_edma_cleanup_vchan(&fsl_edma->dma_dev); of_dma_controller_free(np); dma_async_device_unregister(&fsl_edma->dma_dev); + fsl_edma_cleanup_vchan(&fsl_edma->dma_dev); fsl_disable_clocks(fsl_edma, fsl_edma->drvdata->dmamuxs); } From patchwork Fri Feb 28 07:17:20 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Peng Fan (OSS)" X-Patchwork-Id: 13995807 Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on2051.outbound.protection.outlook.com [40.107.22.51]) (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 3825A1C57B2 for ; Fri, 28 Feb 2025 07:18:44 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.22.51 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740727127; cv=fail; b=J+LtOxtN612UKM4Gqtm1o1J3la6J8leELNdtpiXHNlwhl43TUss8LWgqxww2ZxjsNQLvuKCBdSgujHF9EhM62QuF7+BQxIZ3k3FuIYkYgZrlp4xPANu9FwenWC3yQJ6/KqAgLqekHh0505+9MN/aUs+3zsQgNkuXd/SoptHRklE= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740727127; c=relaxed/simple; bh=AIjEW1iuHqLDuYIZZXKS/1ogA3leukZcjC1fGuw6X8g=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=FNIL+wkx7nALRvy7+Jo8OYi/dVhPwRgpih2P4BZz/SVBRdG3RzOQpbQ+of+e6HnQ7t+g8ey434HYUvb8kwZm0qs9JyiXl90Z6FL3Ps70B89h9V/GhuG6xKLEFXChjv4LYUEvhy6au5X75MjN9BvzifRhJJZtQoURlvt7NU3sjXQ= 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=N8F1jYKA; arc=fail smtp.client-ip=40.107.22.51 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="N8F1jYKA" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=D7F56sEB5D5igsKAnm79vzZkE6EBVFVxBk+/e7fW7ydRJWAZcRDZNd70+/fpU0MHbMpB/PoXsAdxhduee/icZxhPwHD7tEI5qsKY/4i79b/modHVMi0QiwUhANJxxAZh6qwk5lU2bckYwtQ/RH1JypRil/8GIyX6bitT+uMAUn5GrMs1afON971w2tKo7+xjuFWAC8eyt/GVrD+5oFIF0pGU3fLrnNhKrUGWSRZrKqdamyyukSX1OMMXNfOyyj3VwmF09hpEZiDKzuqJ6oXbW/BWT9vO1O6tLbuJK1coZMgqTT9dArFHM8QAjpwuCQVITfswOy7l89kg/Nh4VVe16Q== 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=dO/gQByDYvHjvuAd2hY6MBjjuxO8dNknTOFPvkLcpHg=; b=X+DUpfSWFaTrafehEsTLcj97ghL5dJCi25aC2v4GiWWTwa/sBiIX4L4g8nWzL39LW7M0I0pwkF8gbRA9oq//wG2o6gFH4wzoHuakLuOjslzv7vhCQZSjpJ2RapJrYlP8H3TjGNwjb4btJAoR07twsWglCHLH07nWcVAjaZgPruon+rBiF48G8HECovTSO9o3UR1ZYoJzJa7jYYtQFjCRM87AL5Xmur0QWXVjwYRGxOMKCoy43ytc5h7Rz4VY5AFzs9JDQJGR2+FqGulP1LDaA61XyPCP4YhB+lFr3crtJpF7OBdmHSb3VcQqr812PA29BR3OAjDXx3WpAdnJG3CNdQ== 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=dO/gQByDYvHjvuAd2hY6MBjjuxO8dNknTOFPvkLcpHg=; b=N8F1jYKAVxaYkT+5tWwLXiWH1IU89SUgbA8lcS1wdYJ/NUJEKdYbtk2rtZkSB9R5U28rdnK4Dae+wG9TPe+lwwonR1SW6aaawpIN63y91SfiE2TBIC4W8EMaYuUlHQMaZ6OpU8/I+K1kgK1fOLd3YGi1kix3ltLgmbob95n+aSq56JQFwFKfVMvMCWmHZxki9qL3fW+0HfGbfvPsXrlTMDPe/f9pNNc6UbI59Hrp3p5BVq3JokHDhuQXU6fhh/5CGgGdEYfYIglTzuHg6S0w2TCpXTOv+nD66LJjnuSlMo/6/MRlTCqmP7NI7YIKX9MbTgYG9TsFG15uSplJP0xmUQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=oss.nxp.com; Received: from PAXPR04MB8459.eurprd04.prod.outlook.com (2603:10a6:102:1da::15) by PAXPR04MB8511.eurprd04.prod.outlook.com (2603:10a6:102:212::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8489.19; Fri, 28 Feb 2025 07:18:42 +0000 Received: from PAXPR04MB8459.eurprd04.prod.outlook.com ([fe80::165a:30a2:5835:9630]) by PAXPR04MB8459.eurprd04.prod.outlook.com ([fe80::165a:30a2:5835:9630%4]) with mapi id 15.20.8466.013; Fri, 28 Feb 2025 07:18:42 +0000 From: "Peng Fan (OSS)" To: Frank.Li@nxp.com, vkoul@kernel.org Cc: imx@lists.linux.dev, dmaengine@vger.kernel.org, linux-kernel@vger.kernel.org, Peng Fan Subject: [PATCH V4 RESEND 2/2] dmaengine: fsl-edma: free irq correctly in remove path Date: Fri, 28 Feb 2025 15:17:20 +0800 Message-Id: <20250228071720.3780479-2-peng.fan@oss.nxp.com> X-Mailer: git-send-email 2.37.1 In-Reply-To: <20250228071720.3780479-1-peng.fan@oss.nxp.com> References: <20250228071720.3780479-1-peng.fan@oss.nxp.com> X-ClientProxiedBy: SI1PR02CA0051.apcprd02.prod.outlook.com (2603:1096:4:1f5::6) To PAXPR04MB8459.eurprd04.prod.outlook.com (2603:10a6:102:1da::15) Precedence: bulk X-Mailing-List: imx@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: PAXPR04MB8459:EE_|PAXPR04MB8511:EE_ X-MS-Office365-Filtering-Correlation-Id: 85ef61f4-b40d-415e-080c-08dd57c8215b X-MS-Exchange-SharedMailbox-RoutingAgent-Processed: True X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|366016|52116014|376014|38350700014; X-Microsoft-Antispam-Message-Info: hfEVdZ1BIz8ztaqpuuRFwU1/qe+VGei0XjMZ4gsTJK6iovdBl2UL8ZRqRoNq7P8LT3pO4zDZOQpvG4znVlh3AGWfFpfl3otueWbA3E1n2ip9sWWmqlFfTaaU5jeFFQUPTz9eREwl+D45gK5uVgXvoY6DCg14fCiu8y+h6zCQb/42rD5D7GgNDmzkvmBkvCWkBXUgdj09WM599yHvrFyyaNDHmuiOZYCtu3sauYvx1Fanl6hVYbv6UzhI9buZr4HOsUaDv7OYhEnGbLWVffj8PVHJ2wUnaLmbujDgURyn7AGcHQKoGuaeokVEsIzkh159/+vuLqTcWUjig8B0UV688aCRMlkh7Nm3bHqAEKFqeLNBUJ7GrGsaScAGngu24R7KZ319EIRTYBA6quvD4suz4w8w+YBRkqp5af6kIn7vVR1oKDwNhc+TWE/27BGFTeoUzBtuQk+xw+Ho3ux0DK0hx95X0SWG9La1lyosHN77Y0AfBuARYZKNIbz4HQmge61Yn23Hu83FGIyIG9WyjmjfT4bNRoaf56NpmiG2DOI/oosM/mdKBE9+5O7y5KkT09dEoZOQ5uZDjBkRH6heFnsnu5Mk1wOnU/Qqb/hOMx0imo299NzcRqMK9L3DdVbjAt5KGM9ZvaBBeIhZIv1IdO7jpzBP6f9noeXfDpc7qTUvS8SeJ3WJMArsRvQbGWM5Q311vX5bX46cDmWYBgMhfwX59BGBOUph8qkbaRhehsT/rE3mii6+LAzxL2q7o2Nh+tlI7eWX6RclyLrlKzdcC3lIWZOgIud5BGQ39DOv3ULg0vhRG6DNz71B4E0zD3/Cz/rDFhPcjfCxctgGSXhLnJmfQ5n+N2khok0Pn+kTuybolggjbk+ph9YGFPnZtzCLXDiZBgmCzfc+GqsYvDQWl1YsCguyIODEZeCU3av5NLZfkNVbHok6XyrQNWE5YCdQ6NxZFJazeE46RrC1fpHIZe3IAdoxn174muareaSjR1ALzkAdUqLjmx3Sy2zJpwvcNiBxcAOUokX7nOuSLgU7TKCxxQ2jihM9OOLcbq4ySNFyTZb2r44Z4sqywmitwL9BB5/OgtcZ/XUd8iwWLdicBSzjezLtEjSJwo5HHOUBrTQdUwX2RJMF+dAOahFQY+azpsObHU29yFqCv+YJWdzpWS1HBz/Fn9GGyF2v3JKyEaXNM7JHFekHjyl+wxcXf009bPX4g6WWT/3ItJeR2/uVr8tmzqXwcOJrIW7fxQ6tHEZIUXuSv50QMqwy4XdN2YQupoS50ZyHB6BrqGk2Ok+1KzltFFjeS/8OqLm3cZg36Re6pgrn4Kn7DhWjGUj6qb3v9Hl7+9KyzeS7x5D5wOFUe0HT8rmuiX7VlM9Ad5/CrM3sv7VjpAR4SrPItXuqM9b8trrOC+XruWFk7rR8SVgr41BZWauNj99yRoTlX0uzOFH/sEHfVFdS2M5O4hSaFXO8dKQ0 X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PAXPR04MB8459.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(366016)(52116014)(376014)(38350700014);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: UiUbvcLrC6o+s72kXgHljbp8ds7MJoZ96H1UNVe0z0Dg29KCp3zOqrrKoizR3Q8DrZJHugCtH3IURRybMmHvYJ3CzTwo15WIoMiufXmemahO6KGu75/vKDY9jsOgTkoF1vlrNvX9SpVoW13BjyFV0V/jxUyM3DEqcrO1JuWS1j1cYZ0GIK5FgEN+wvcWcO+e8kUaFfdC4tbDNLJC9hcU2isSTEqRtnY77/HwM5abQGoRpxwXLGsL2otNxthYxfWghDtvNCdLPxCg/tXSrhVuh9ok8HhhVJhdxYtcvJkCrrlaDR//5l/DEvh//5qUjNKXR5KaMdh2LBcRrzgTrXodVSoB5NqViX1J3BpEFXLRmUDMgfRgGk1TF4Kygfn4fBpdp1dpzO7jDEcSNXuq91u5NLJkrYEuKzx3vfJPOiV7fLI5pkmRbzsHSaiYxSVsAphW3ifM61zqh6FpAOEQf+9TG4TKd3tq4onRU9/HaDSxZ96hPzOUlWlgjfb3s2wusW5XZGKqbEWilUU2RCIiGsh52PbDgDQXpobWU7b8+9dM4R0ZVkX0+DVoBcgLlHcjTV5nPnBbYrroKxiW0s/9rLARXIzoFCqlvg4jy36uhXXLCWVikwIuKv00l8GXjjYrO67MpVWlUTEFD2T5P5lhLmu8OAuaW9DKK5iqnV/khRIcpySUs5WCABvu7e/TlCaYrC0BkFz38FxGxxUIJfvrWUdc/PUOEtq4oc8oYGwxEYzIXK4F2eSF40xukVagA1W0LIcM6eWLhyKAe9uzjQk9j/gdkQYLFEzmJgMFe47sWvf6/bLOTCbYbfS/hU+S/LukIq8RfJZ8Si/UEmNu+aCka8lCat28SHP9CXAKSLNvs+jVh2m64w4OSovcNQayymC97Q6FGSehrIRFM0akGMoPbqNGULQXe1hu1GoAY5YBxf7BAiMoM9w6syo7211FL/9XMnYADmje8SrIn9vCPnCPaGYFoZIPqW3tPkO7bS2vEGphhg3zrd4zV9YkiaDDzvYw+4h7Hfd44GXBHZa/dUIHIfuRAE0qopRl63haKlf8cyl0eKl8UDN7xkYRhsp+KXjWPE5xNXszZDgPFUoYSV3XMX33f9xi2YU/DYU1z56aXoxFU10v5blpRiQv75hMudxuwEXvX8LBYjRrpmB7yui/FlqP3s1Kg0BbxTB8xu54faKuGX3wreo926BTg8cxd5xrfVzdbphpHT8E5OktNtj7n/Iobn1EpcVb/rthIA0jcHnhrXbIMaS9yurK/h7yS4epktPdj3Msp8BZlGXureEzlLSy22Q7alFl+q45B9Ff68CzaA4zenlE+0d+9jsA10bsaPSHEOtJGPxjZ1K5lFTaXWKT65ZiVpubVx+Ue8sMnzwyWkDHnsq5DtuQZ4EIQzfJzawvnzB0m6+D0mNc2ovF8ibNrzx1oG1HBeIvQhaSaMl4vf3Vg0O+X2NO4ioJ4OwRIV/srjjNYMzCoGQAuOe5vtJSGM00fX0qC3t7N4COr3Gy3ckthManny7s6O1zgS9nxi5inRUjyOH70bP4bdHL4Lq0AqUfICujBf+k9ZTFsE5gnuHkKor9ieUSKf/m67aCKBf8 X-OriginatorOrg: oss.nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 85ef61f4-b40d-415e-080c-08dd57c8215b X-MS-Exchange-CrossTenant-AuthSource: PAXPR04MB8459.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Feb 2025 07:18:42.3615 (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: WvnP4yiaxQYg8LKQ0nIs29imPbZhtRvZ3ulFwRDZzwLlblIl8PmxveCjzq3qR8esqiO2oGaP/qJv3s9YvqbMig== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8511 From: Peng Fan Add fsl_edma->txirq/errirq check to avoid below warning because no errirq at i.MX9 platform. Otherwise there will be kernel dump: WARNING: CPU: 0 PID: 11 at kernel/irq/devres.c:144 devm_free_irq+0x74/0x80 Modules linked in: CPU: 0 UID: 0 PID: 11 Comm: kworker/u8:0 Not tainted 6.12.0-rc7#18 Hardware name: NXP i.MX93 11X11 EVK board (DT) Workqueue: events_unbound deferred_probe_work_func pstate: 60400009 (nZCv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--) pc : devm_free_irq+0x74/0x80 lr : devm_free_irq+0x48/0x80 Call trace: devm_free_irq+0x74/0x80 (P) devm_free_irq+0x48/0x80 (L) fsl_edma_remove+0xc4/0xc8 platform_remove+0x28/0x44 device_remove+0x4c/0x80 Fixes: 44eb827264de ("dmaengine: fsl-edma: request per-channel IRQ only when channel is allocated") Reviewed-by: Frank Li Signed-off-by: Peng Fan --- V4: Update commit log per Frank Add R-b V3: Update commit log V2: None drivers/dma/fsl-edma-main.c | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/drivers/dma/fsl-edma-main.c b/drivers/dma/fsl-edma-main.c index 7eb4d898434b..756d67325db5 100644 --- a/drivers/dma/fsl-edma-main.c +++ b/drivers/dma/fsl-edma-main.c @@ -401,6 +401,7 @@ fsl_edma2_irq_init(struct platform_device *pdev, /* The last IRQ is for eDMA err */ if (i == count - 1) { + fsl_edma->errirq = irq; ret = devm_request_irq(&pdev->dev, irq, fsl_edma_err_handler, 0, "eDMA2-ERR", fsl_edma); @@ -420,10 +421,13 @@ static void fsl_edma_irq_exit( struct platform_device *pdev, struct fsl_edma_engine *fsl_edma) { if (fsl_edma->txirq == fsl_edma->errirq) { - devm_free_irq(&pdev->dev, fsl_edma->txirq, fsl_edma); + if (fsl_edma->txirq >= 0) + devm_free_irq(&pdev->dev, fsl_edma->txirq, fsl_edma); } else { - devm_free_irq(&pdev->dev, fsl_edma->txirq, fsl_edma); - devm_free_irq(&pdev->dev, fsl_edma->errirq, fsl_edma); + if (fsl_edma->txirq >= 0) + devm_free_irq(&pdev->dev, fsl_edma->txirq, fsl_edma); + if (fsl_edma->errirq >= 0) + devm_free_irq(&pdev->dev, fsl_edma->errirq, fsl_edma); } } @@ -620,6 +624,8 @@ static int fsl_edma_probe(struct platform_device *pdev) if (!fsl_edma) return -ENOMEM; + fsl_edma->errirq = -EINVAL; + fsl_edma->txirq = -EINVAL; fsl_edma->drvdata = drvdata; fsl_edma->n_chans = chans; mutex_init(&fsl_edma->fsl_edma_mutex);