[PATCH] interconnect: Check for valid path in icc_set_bw()

From: Georgi Djakov
Date: Fri Dec 20 2019 - 12:13:16 EST


Use IS_ERR() to ensure that the path passed to icc_set_bw() is valid.

Signed-off-by: Georgi Djakov <georgi.djakov@xxxxxxxxxx>
---
drivers/interconnect/core.c | 5 +++++
1 file changed, 5 insertions(+)

diff --git a/drivers/interconnect/core.c b/drivers/interconnect/core.c
index 63c164264b73..14a6f7ade44a 100644
--- a/drivers/interconnect/core.c
+++ b/drivers/interconnect/core.c
@@ -498,6 +498,11 @@ int icc_set_bw(struct icc_path *path, u32 avg_bw, u32 peak_bw)
if (!path || !path->num_nodes)
return 0;

+ if (IS_ERR(path)) {
+ pr_err("%s: invalid path=%ld\n", __func__, PTR_ERR(path));
+ return -EINVAL;
+ }
+
mutex_lock(&icc_lock);

old_avg = path->reqs[0].avg_bw;