rproc_mem_entry_init() interprets its name argument as a printf format
string. Passing the device name directly allows percent conversions in a
DT-derived platform device name to consume nonexistent variadic arguments.
Pass the device name through a constant format so it is always handled as
data. Limit the formatted name to 31 characters to match the space
available in rproc_mem_entry::name while leaving room for its terminating
null byte.
Fixes: f87b4998994e ("remoteproc: Add AMD MicroBlaze/V BRAM-based remote
processor driver")
Reviewed-by: Tanmay Shah <[email protected]>
Signed-off-by: Ben Levinsky <[email protected]>
---
drivers/remoteproc/amd_mbv_bram_rproc.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/remoteproc/amd_mbv_bram_rproc.c
b/drivers/remoteproc/amd_mbv_bram_rproc.c
index e4a103cf8455..6cf33c7b7e64 100644
--- a/drivers/remoteproc/amd_mbv_bram_rproc.c
+++ b/drivers/remoteproc/amd_mbv_bram_rproc.c
@@ -72,7 +72,7 @@ static int amd_bram_rproc_prepare(struct rproc *rproc)
resource_size(&res), da,
rproc_mem_entry_ioremap_wc,
rproc_mem_entry_iounmap,
- dev_name(priv->dev));
+ "%.31s", dev_name(priv->dev));
if (!mem)
return -ENOMEM;
--
2.34.1