On 5/18/2026 3:59 PM, Konrad Dybcio wrote:
On 5/15/26 2:42 PM, Jianping Li wrote:
Audio PD static process creation assumes that a reserved-memory
region is defined in DT and exposed via cctx->remote_heap.

If reserved-memory is missing or incomplete, the driver may pass
invalid address/size information to the DSP, leading to undefined
behavior or crashes.

Add explicit validation for remote_heap presence and size before
sending the memory to DSP, and fail early if the configuration is
invalid.

Fixes: 0871561055e66 ("misc: fastrpc: Add support for audiopd")
Cc: [email protected]
Signed-off-by: Jianping Li <[email protected]>
---
  drivers/misc/fastrpc.c | 6 ++++++
  1 file changed, 6 insertions(+)

diff --git a/drivers/misc/fastrpc.c b/drivers/misc/fastrpc.c
index 3c7c3b410d7d..a0337cce77f3 100644
--- a/drivers/misc/fastrpc.c
+++ b/drivers/misc/fastrpc.c
@@ -1363,6 +1363,12 @@ static int fastrpc_init_create_static_process(struct 
fastrpc_user *fl,
        args[1].length = inbuf.namelen;
        args[1].fd = -1;
+ if (!fl->cctx->remote_heap ||
+           !fl->cctx->remote_heap->dma_addr ||
+           !fl->cctx->remote_heap->size) {
+               err = -ENOMEM;
+               goto err;
Let's maybe add an UERR() with some context

Konrad

Planning to move this check at the start of this function as per Dmitry's 
suggestion.
I'll also add a dev_dbg log there.

Thanks,
Jianping.

Reply via email to