[PATCH v2] interconnect: Check for valid path in icc_set_bw()
From: Georgi Djakov
Date: Mon Jan 06 2020 - 12:27:48 EST
Use IS_ERR() to ensure that the path passed to icc_set_bw() is valid.
Signed-off-by: Georgi Djakov <georgi.djakov@xxxxxxxxxx>
---
v2:
- Use WARN_ON() instead of pr_err() (Bjorn)
drivers/interconnect/core.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/drivers/interconnect/core.c b/drivers/interconnect/core.c
index 63c164264b73..d2ba5ae7d25b 100644
--- a/drivers/interconnect/core.c
+++ b/drivers/interconnect/core.c
@@ -495,9 +495,12 @@ int icc_set_bw(struct icc_path *path, u32 avg_bw, u32 peak_bw)
size_t i;
int ret;
- if (!path || !path->num_nodes)
+ if (!path)
return 0;
+ if (WARN_ON(IS_ERR(path) || !path->num_nodes))
+ return -EINVAL;
+
mutex_lock(&icc_lock);
old_avg = path->reqs[0].avg_bw;