linux-stable/drivers/devfreq
Ezequiel Garcia 7544fd7f38 PM / devfreq: Fix kernel oops on governor module load
A bit unexpectedly (but still documented), request_module may
return a positive value, in case of a modprobe error.
This is currently causing issues in the devfreq framework.

When a request_module exits with a positive value, we currently
return that via ERR_PTR. However, because the value is positive,
it's not a ERR_VALUE proper, and is therefore treated as a
valid struct devfreq_governor pointer, leading to a kernel oops.

Fix this by returning -EINVAL if request_module returns a positive
value.

Fixes: b53b012805 ("PM / devfreq: Fix static checker warning in try_then_request_governor")
Signed-off-by: Ezequiel Garcia <ezequiel@collabora.com>
Reviewed-by: Chanwoo Choi <cw00.choi@samsung.com>
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
2019-08-24 20:11:12 +09:00
..
event treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
devfreq-event.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
devfreq.c PM / devfreq: Fix kernel oops on governor module load 2019-08-24 20:11:12 +09:00
exynos-bus.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
governor.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
governor_passive.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
governor_performance.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
governor_powersave.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
governor_simpleondemand.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
governor_userspace.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
Kconfig PM / devfreq: Introduce driver for NVIDIA Tegra20 2019-08-24 20:11:12 +09:00
Makefile PM / devfreq: Introduce driver for NVIDIA Tegra20 2019-08-24 20:11:12 +09:00
rk3399_dmc.c PM / devfreq: rk3399_dmc: Fix spelling typo 2019-08-24 20:11:12 +09:00
tegra20-devfreq.c PM / devfreq: Introduce driver for NVIDIA Tegra20 2019-08-24 20:11:12 +09:00
tegra30-devfreq.c PM / devfreq: tegra: Rename tegra-devfreq.c to tegra30-devfreq.c 2019-08-24 20:11:12 +09:00