Skip to content

Commit aa783ab

Browse files
committed
soc: qcom: Add check devm_kasprintf() returned value
JIRA: https://issues.redhat.com/browse/RHEL-85597 commit e694d2b Author: Charles Han <hanchunchao@inspur.com> Date: Sun Sep 29 15:23:49 2024 +0800 soc: qcom: Add check devm_kasprintf() returned value devm_kasprintf() can return a NULL pointer on failure but this returned value in qcom_socinfo_probe() is not checked. Signed-off-by: Charles Han <hanchunchao@inspur.com> Link: https://lore.kernel.org/r/20240929072349.202520-1-hanchunchao@inspur.com Signed-off-by: Bjorn Andersson <andersson@kernel.org> Signed-off-by: Jared Kangas <jkangas@redhat.com>
1 parent 2f93fda commit aa783ab

File tree

1 file changed

+7
-1
lines changed

1 file changed

+7
-1
lines changed

drivers/soc/qcom/socinfo.c

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -614,10 +614,16 @@ static int qcom_socinfo_probe(struct platform_device *pdev)
614614
qs->attr.revision = devm_kasprintf(&pdev->dev, GFP_KERNEL, "%u.%u",
615615
SOCINFO_MAJOR(le32_to_cpu(info->ver)),
616616
SOCINFO_MINOR(le32_to_cpu(info->ver)));
617-
if (offsetof(struct socinfo, serial_num) <= item_size)
617+
if (!qs->attr.soc_id || qs->attr.revision)
618+
return -ENOMEM;
619+
620+
if (offsetof(struct socinfo, serial_num) <= item_size) {
618621
qs->attr.serial_number = devm_kasprintf(&pdev->dev, GFP_KERNEL,
619622
"%u",
620623
le32_to_cpu(info->serial_num));
624+
if (!qs->attr.serial_number)
625+
return -ENOMEM;
626+
}
621627

622628
qs->soc_dev = soc_device_register(&qs->attr);
623629
if (IS_ERR(qs->soc_dev))

0 commit comments

Comments
 (0)