[PATCH v2] misc: fastrpc: fix memory leak in fastrpc_channel_ctx_free

From: Eddie Lin

Date: Wed Jun 17 2026 - 07:17:18 EST


The 'ctx_idr' is initialized but never destroyed when
the channel context is freed, leading to a memory leak.
Add idr_destroy() to properly clean up the IDR resources.

Fixes: f6f9279f2bf0 ("misc: fastrpc: Add Qualcomm fastrpc basic driver model")
Cc: stable@xxxxxxxxxxxxxxx
Signed-off-by: Eddie Lin <eddie.lin@xxxxxxxxxxxxxxxx>
---
This patch fixes a memory leak in the FastRPC driver by destroying the
IDR associated with the channel context during cleanup.
---
Changes in v2:
- Added Fixes tag.
- Added Cc: stable@xxxxxxxxxxxxxxx.
- Removed duplicate description from cover letter.
- Link to v1: https://patch.msgid.link/20260611-fastrpc-cctx-cleanup-v1-1-28097444116c@xxxxxxxxxxxxxxxx
---
drivers/misc/fastrpc.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/drivers/misc/fastrpc.c b/drivers/misc/fastrpc.c
index a9b2ae44c06f..7727850e9240 100644
--- a/drivers/misc/fastrpc.c
+++ b/drivers/misc/fastrpc.c
@@ -492,6 +492,7 @@ static void fastrpc_channel_ctx_free(struct kref *ref)

cctx = container_of(ref, struct fastrpc_channel_ctx, refcount);

+ idr_destroy(&cctx->ctx_idr);
kfree(cctx);
}


---
base-commit: abe651837cb394f76d738a7a747322fca3bf17ba
change-id: 20260611-fastrpc-cctx-cleanup-bfd20aa7b8a0

Best regards,
--
Eddie Lin <eddie.lin@xxxxxxxxxxxxxxxx>