Commit 37911636 authored by Georgi Djakov's avatar Georgi Djakov Committed by Greg Kroah-Hartman

interconnect: Handle memory allocation errors

When we allocate memory, kasprintf() can fail and we must check its
return value.

Fixes: 05309830 ("interconnect: Add a name to struct icc_path")
Signed-off-by: default avatarGeorgi Djakov <georgi.djakov@linaro.org>
Link: https://lore.kernel.org/r/20200226110420.5357-2-georgi.djakov@linaro.orgSigned-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 3745488e
...@@ -445,6 +445,11 @@ struct icc_path *of_icc_get(struct device *dev, const char *name) ...@@ -445,6 +445,11 @@ struct icc_path *of_icc_get(struct device *dev, const char *name)
path->name = kasprintf(GFP_KERNEL, "%s-%s", path->name = kasprintf(GFP_KERNEL, "%s-%s",
src_node->name, dst_node->name); src_node->name, dst_node->name);
if (!path->name) {
kfree(path);
return ERR_PTR(-ENOMEM);
}
return path; return path;
} }
EXPORT_SYMBOL_GPL(of_icc_get); EXPORT_SYMBOL_GPL(of_icc_get);
...@@ -579,6 +584,10 @@ struct icc_path *icc_get(struct device *dev, const int src_id, const int dst_id) ...@@ -579,6 +584,10 @@ struct icc_path *icc_get(struct device *dev, const int src_id, const int dst_id)
} }
path->name = kasprintf(GFP_KERNEL, "%s-%s", src->name, dst->name); path->name = kasprintf(GFP_KERNEL, "%s-%s", src->name, dst->name);
if (!path->name) {
kfree(path);
path = ERR_PTR(-ENOMEM);
}
out: out:
mutex_unlock(&icc_lock); mutex_unlock(&icc_lock);
return path; return path;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment