* [PATCH 1/2] misc: fastrpc: Reduce console noise from expected DSP info, reserved memory and session messages
2026-10-02 10:13 [PATCH 0/2] misc: fastrpc: patches for 7.4 srini
@ 2026-10-02 10:13 ` srini
2026-10-02 10:13 ` [PATCH 2/2] misc: fastrpc: Use devm_of_reserved_mem_device_init() srini
1 sibling, 0 replies; 3+ messages in thread
From: srini @ 2026-10-02 10:13 UTC (permalink / raw)
To: gregkh; +Cc: linux-kernel, Jianping Li, Srinivas Kandagatla
From: Jianping Li <jianping.li@oss.qualcomm.com>
On some platforms the DSP firmware does not support the fastrpc
capability/attribute query. The DSP side returns an error (err: -1)
while handling the request, so fastrpc_get_info_from_dsp() does not
return DSP_UNSUPPORTED_API but a generic error, and the "else if (err)"
branch in fastrpc_get_info_from_kernel() is taken.
cctx->valid_attributes is therefore never set and every open()/query
re-prints the same "dsp information is incorrect" line. This is not
tied to boot timing: it can be reproduced at any time by manually
starting adsprpcd. On RC builds with metadata flashing enabled several
clients come up and flood the console.
As this is an expected, platform-specific and non-fatal condition,
downgrade the message to dev_dbg. Similarly, the absence of reserved
DMA memory is a valid configuration and does not indicate an error,
so downgrade that message to dev_dbg as well. Also rate-limit the
"No session available" message with dev_err_ratelimited(): it reflects
a genuine failure (open() returns -EBUSY) so it should still be visible,
but must not flood dmesg when the session pool is exhausted.
No functional change intended.
Signed-off-by: Jianping Li <jianping.li@oss.qualcomm.com>
Link: https://lore.kernel.org/all/20260514062825.50172-1-jianping.li@oss.qualcomm.com/
Signed-off-by: Srinivas Kandagatla <srini@kernel.org>
---
drivers/misc/fastrpc.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/misc/fastrpc.c b/drivers/misc/fastrpc.c
index 90fd669636ec..f40356c95051 100644
--- a/drivers/misc/fastrpc.c
+++ b/drivers/misc/fastrpc.c
@@ -1783,7 +1783,7 @@ static int fastrpc_device_open(struct inode *inode, struct file *filp)
fl->sctx = fastrpc_session_alloc(fl);
if (!fl->sctx) {
- dev_err(&cctx->rpdev->dev, "No session available\n");
+ dev_err_ratelimited(&cctx->rpdev->dev, "No session available\n");
mutex_destroy(&fl->mutex);
kfree(fl);
fastrpc_channel_ctx_put(cctx);
@@ -1941,7 +1941,7 @@ static int fastrpc_get_info_from_kernel(struct fastrpc_ioctl_capability *cap,
kfree(dsp_attributes);
return -EOPNOTSUPP;
} else if (err) {
- dev_err(&cctx->rpdev->dev, "Error: dsp information is incorrect err: %d\n", err);
+ dev_dbg(&cctx->rpdev->dev, "Error: dsp information is incorrect err: %d\n", err);
kfree(dsp_attributes);
return err;
}
@@ -2563,7 +2563,7 @@ static int fastrpc_rpmsg_probe(struct rpmsg_device *rpdev)
}
if (of_reserved_mem_device_init_by_idx(rdev, rdev->of_node, 0))
- dev_info(rdev, "no reserved DMA memory for FASTRPC\n");
+ dev_dbg(rdev, "no reserved DMA memory for FASTRPC\n");
vmcount = of_property_read_variable_u32_array(rdev->of_node,
"qcom,vmids", &vmids[0], 0, FASTRPC_MAX_VMIDS);
--
2.53.0
^ permalink raw reply [flat|nested] 3+ messages in thread* [PATCH 2/2] misc: fastrpc: Use devm_of_reserved_mem_device_init()
2026-10-02 10:13 [PATCH 0/2] misc: fastrpc: patches for 7.4 srini
2026-10-02 10:13 ` [PATCH 1/2] misc: fastrpc: Reduce console noise from expected DSP info, reserved memory and session messages srini
@ 2026-10-02 10:13 ` srini
1 sibling, 0 replies; 3+ messages in thread
From: srini @ 2026-10-02 10:13 UTC (permalink / raw)
To: gregkh
Cc: linux-kernel, Mukesh Ojha, Ekansh Gupta, Konrad Dybcio,
Srinivas Kandagatla
From: Mukesh Ojha <mukesh.ojha@oss.qualcomm.com>
Use the devres-managed devm_of_reserved_mem_device_init() to ensure
the reserved memory region is released on device removal, fixing a
missing of_reserved_mem_device_release() in fastrpc_rpmsg_remove().
Reviewed-by: Ekansh Gupta <ekansh.gupta@oss.qualcomm.com>
Signed-off-by: Mukesh Ojha <mukesh.ojha@oss.qualcomm.com>
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Signed-off-by: Srinivas Kandagatla <srini@kernel.org>
---
drivers/misc/fastrpc.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/misc/fastrpc.c b/drivers/misc/fastrpc.c
index f40356c95051..0a3b6321ad0d 100644
--- a/drivers/misc/fastrpc.c
+++ b/drivers/misc/fastrpc.c
@@ -2562,7 +2562,7 @@ static int fastrpc_rpmsg_probe(struct rpmsg_device *rpdev)
return -EINVAL;
}
- if (of_reserved_mem_device_init_by_idx(rdev, rdev->of_node, 0))
+ if (devm_of_reserved_mem_device_init(rdev))
dev_dbg(rdev, "no reserved DMA memory for FASTRPC\n");
vmcount = of_property_read_variable_u32_array(rdev->of_node,
--
2.53.0
^ permalink raw reply [flat|nested] 3+ messages in thread