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.
