summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBartosz Golaszewski <bartosz.golaszewski@linaro.org>2024-12-02 17:57:23 +0100
committerGeorgi Djakov <djakov@kernel.org>2024-12-17 14:03:34 +0200
commit44c5aa73ccd1e8a738fd011354ee8fb9fcda201a (patch)
tree14f35ba3ad68a528bc048b1642e10b4661518b33
parent00a973e093e93690d433f1e1873ee52a6a6eca1f (diff)
downloadlinux-44c5aa73ccd1e8a738fd011354ee8fb9fcda201a.tar.gz
linux-44c5aa73ccd1e8a738fd011354ee8fb9fcda201a.tar.bz2
linux-44c5aa73ccd1e8a738fd011354ee8fb9fcda201a.zip
interconnect: icc-clk: check return values of devm_kasprintf()
devm_kasprintf() can fail and return NULL, add missing return value checks. Fixes: 0ac2a08f42ce ("interconnect: add clk-based icc provider support") Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org> Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> Link: https://lore.kernel.org/r/20241202165723.17292-1-brgl@bgdev.pl Signed-off-by: Georgi Djakov <djakov@kernel.org>
-rw-r--r--drivers/interconnect/icc-clk.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/drivers/interconnect/icc-clk.c b/drivers/interconnect/icc-clk.c
index b956e4050f38..88f311c11020 100644
--- a/drivers/interconnect/icc-clk.c
+++ b/drivers/interconnect/icc-clk.c
@@ -116,6 +116,11 @@ struct icc_provider *icc_clk_register(struct device *dev,
}
node->name = devm_kasprintf(dev, GFP_KERNEL, "%s_master", data[i].name);
+ if (!node->name) {
+ ret = -ENOMEM;
+ goto err;
+ }
+
node->data = &qp->clocks[i];
icc_node_add(node, provider);
/* link to the next node, slave */
@@ -129,6 +134,11 @@ struct icc_provider *icc_clk_register(struct device *dev,
}
node->name = devm_kasprintf(dev, GFP_KERNEL, "%s_slave", data[i].name);
+ if (!node->name) {
+ ret = -ENOMEM;
+ goto err;
+ }
+
/* no data for slave node */
icc_node_add(node, provider);
onecell->nodes[j++] = node;