remoteproc: qcom: replace kstrdup with kstrndup
authorMukesh Ojha <quic_mojha@quicinc.com>
Tue, 14 Feb 2023 14:08:11 +0000 (19:38 +0530)
committerBjorn Andersson <andersson@kernel.org>
Tue, 14 Feb 2023 16:21:01 +0000 (08:21 -0800)
Since, there is no guarantee that region.name will be 0-terminated
from the firmware side, replace kstrdup with kstrndup.

Suggested-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Signed-off-by: Mukesh Ojha <quic_mojha@quicinc.com>
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
Link: https://lore.kernel.org/r/1676383691-29738-1-git-send-email-quic_mojha@quicinc.com
drivers/remoteproc/qcom_common.c

index 020349f..7810f91 100644 (file)
@@ -124,7 +124,7 @@ static int qcom_add_minidump_segments(struct rproc *rproc, struct minidump_subsy
        for (i = 0; i < seg_cnt; i++) {
                memcpy_fromio(&region, ptr + i, sizeof(region));
                if (region.valid == MD_REGION_VALID) {
-                       name = kstrdup(region.name, GFP_KERNEL);
+                       name = kstrndup(region.name, MAX_REGION_NAME_LENGTH - 1, GFP_KERNEL);
                        if (!name) {
                                iounmap(ptr);
                                return -ENOMEM;