android_kernel_sony_sdm845/drivers/devfreq
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Jonathan Avila 5a2f4ce3fa PM / devfreq: Introduce a sysfs lock
Currently, concurrent writes to sysfs entries leave the	possibility for
race conditions within the devfreq framework.  For example, concurrently
executing max_freq_store and governor_store can result in attempting to
perform an update_devfreq() before the new governor's start handler can be
executed.

A more concrete case is a race between polling_interval_store and
governor_store.  Because no lock is used after calling into the event
handler of the old governor and there's nothing preventing work from being
queued after the monitor is stopped, it's possible to accidentally cause
delayed work to be queued on the governor being switched to.  This can be
seen if you create two threads, one which changes a device's governor
between simple_ondemand and performance, and one which changes its polling
interval between 45 and 50.

All of these races can be addressed with the introduction of a lock that
prevents sysfs operations from interleaving in this fashion.

Change-Id: Ia6887dcb2d69dc2576837a6c09fed55a28943abc
Signed-off-by: Jonathan Avila <avilaj@codeaurora.org>
2018-04-11 13:28:37 -07:00
..
event PM / devfreq: exynos-nocp: Remove redundant code 2016-10-10 23:56:22 +02:00
arm-memlat-mon.c PM / devfreq: memlat: Add support for compute-bound logic 2017-11-06 15:03:02 -08:00
bimc-bwmon.c PM / devfreq: disable certain interrupts events 2018-01-10 14:26:59 +05:30
devfreq-event.c PM / devfreq: make devfreq-event explicitly non-modular 2016-07-06 13:11:22 +09:00
devfreq.c PM / devfreq: Introduce a sysfs lock 2018-04-11 13:28:37 -07:00
devfreq_devbw.c PM / devfreq: devbw: Add suspend/resume APIs 2017-03-21 16:51:49 -07:00
devfreq_simple_dev.c devfreq: simple-dev: Make the freq-table property optional 2017-06-15 18:12:35 -07:00
devfreq_spdm.c devfreq: spdm: Add snapshot of devfreq-spdm driver 2017-12-18 21:32:14 -08:00
devfreq_spdm.h devfreq: spdm: Add snapshot of devfreq-spdm driver 2017-12-18 21:32:14 -08:00
devfreq_spdm_debugfs.c dev_freq: devfreq_spdm: add null terminator to prevent OOB access 2018-02-26 08:38:17 -08:00
devfreq_trace.h msm: kgsl: Add GPU bus governor from the msm-4.4 to msm-4.9 2017-04-12 15:28:42 -07:00
exynos-bus.c PM / devfreq: exynos-bus: Fix the wrong return value 2017-01-26 08:24:44 +01:00
governor.h PM / devfreq: Fix wrong trans_stat of passive devfreq device 2017-03-12 06:41:44 +01:00
governor_bw_hwmon.c PM / devfreq: bw_hwmon: use unsigned parameter for bytes_to_mbps 2018-03-05 15:03:04 +08:00
governor_bw_hwmon.h PM / devfreq: bw_hwmon: Add HW offload support to governor 2017-03-28 18:11:16 -07:00
governor_bw_vbif.c msm: kgsl: Add GPU devfreq files from the msm-4.4 to v4.9 2017-01-19 16:06:16 -08:00
governor_cache_hwmon.c PM / devfreq: governor_cache_hwmon: Fix race in monitor start/stop 2017-03-28 17:52:50 -07:00
governor_cache_hwmon.h PM / devfreq: cache_hwmon: Use array for reporting monitor stats 2017-03-28 17:51:35 -07:00
governor_cpufreq.c PM / devfreq: governor_cpufreq: Rewrite locking to avoid deadlocks 2017-03-28 17:51:50 -07:00
governor_gpubw_mon.c msm: kgsl: Add GPU bus governor from the msm-4.4 to msm-4.9 2017-04-12 15:28:42 -07:00
governor_memlat.c PM / devfreq: memlat: Add support for compute-bound logic 2017-11-06 15:03:02 -08:00
governor_memlat.h PM / devfreq: memlat: Add support for compute-bound logic 2017-11-06 15:03:02 -08:00
governor_msm_adreno_tz.c adreno_tz: Correct tz_buf pointer type to correct pointer arithmetic 2017-07-06 13:14:50 +05:30
governor_passive.c PM / devfreq: Fix wrong trans_stat of passive devfreq device 2017-03-12 06:41:44 +01:00
governor_performance.c
governor_powersave.c
governor_simpleondemand.c PM / devfreq: fix scaling down logic for simple clock scaling 2016-08-15 21:01:35 -07:00
governor_spdm_bw_hyp.c devfreq: spdm: Fix for rpm creat request err 2018-01-04 17:42:54 +08:00
governor_userspace.c
Kconfig devfreq: spdm: Add snapshot of devfreq-spdm driver 2017-12-18 21:32:14 -08:00
m4m-hwmon.c PM / devfreq: Introduce M4M cache hwmon device 2017-03-28 17:53:06 -07:00
Makefile devfreq: spdm: Add snapshot of devfreq-spdm driver 2017-12-18 21:32:14 -08:00
msmcci-hwmon.c PM / devfreq: msmcci-hwmon: Add support for handling shared irq 2017-03-28 17:53:51 -07:00
rk3399_dmc.c PM / devfreq: rk3399_dmc: Remove explictly regulator_put call in .remove 2016-09-19 13:36:20 +02:00
tegra-devfreq.c PM / devfreq: tegra: Set freq in rate callback 2016-02-23 14:27:42 +09:00