summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDan Carpenter <dan.carpenter@oracle.com>2019-10-29 21:27:42 +0300
committerKrzysztof Kozlowski <krzk@kernel.org>2019-10-30 19:04:32 +0100
commit89e551e83869732d5b9fd21d7cfdb1f8d62cf5d0 (patch)
tree26e88102007dacf147c53a411f5e34217f8b374d
parent02fb29882d5ccfad352a310cc6fb9ad9d6daad70 (diff)
soc: samsung: exynos-asv: Potential NULL dereference in exynos_asv_update_opps()
The dev_pm_opp_get_opp_table() returns error pointers if it's disabled in the config and it returns NULL if there is an error. This code only checks for error pointers so it could lead to an Oops inside the dev_pm_opp_put_opp_table() function. Fixes: 5ea428595cc5 ("soc: samsung: Add Exynos Adaptive Supply Voltage driver") Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
-rw-r--r--drivers/soc/samsung/exynos-asv.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/soc/samsung/exynos-asv.c b/drivers/soc/samsung/exynos-asv.c
index 8abf4dfaa5c5..30bb7b7cc769 100644
--- a/drivers/soc/samsung/exynos-asv.c
+++ b/drivers/soc/samsung/exynos-asv.c
@@ -93,7 +93,7 @@ static int exynos_asv_update_opps(struct exynos_asv *asv)
continue;
opp_table = dev_pm_opp_get_opp_table(cpu);
- if (IS_ERR(opp_table))
+ if (IS_ERR_OR_NULL(opp_table))
continue;
if (!last_opp_table || opp_table != last_opp_table) {