android_kernel_motorola_sm6375/drivers/devfreq
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Abhishek Shah d8ea382c8a
devfreq: govener_memlat: fix cpu_hotplug_lock recursive lock warning
Possible unsafe locking scenario:

      CPU0
      ----
 lock(cpu_hotplug_lock.rw_sem);
 lock(cpu_hotplug_lock.rw_sem);

*** DEADLOCK ***

Below code under start_hwmon may cause this recursive locking.

	get_online_cpus();
	for_each_cpu(cpu, cpu_possible_mask) {
		if (!cpumask_test_cpu(cpu, cpu_online_mask))
			per_cpu(cpu_is_hp, cpu) = true;
	}
	ret = memlat_event_cpu_hp_init();
	put_online_cpus();

get_online_cpus() acquires cpu_hotplug_lock.rw_sem lock.
Then memlat_event_cpu_hp_init() -> __cpuhp_setup_state() tries
to acquire the same lock again.
Use cpuslocked version of __cpuhp_setup_state() to avoid this warning.

Change-Id: Ied9fe53d02c74816f38c1efe954cea91f9831cc7
Signed-off-by: Abhishek Shah <abhshah@codeaurora.org>
2026-05-25 19:48:34 +00:00
..
event PM / devfreq: exynos-ppmu: Fix refcount leak in of_get_devfreq_events 2022-07-07 17:36:49 +02:00
arm-memlat-mon.c devfreq: govener_memlat: fix cpu_hotplug_lock recursive lock warning 2026-05-25 19:48:34 +00:00
bimc-bwmon.c devfreq: bimc-bwmon: Don't free/reallocate IRQ during suspend/resume 2026-05-07 14:20:06 +00:00
devfreq-event.c
devfreq.c Merge android11-5.4.259+ (81334f2) into msm-5.4 2023-12-18 15:40:18 +05:30
devfreq_icc.c
devfreq_qcom_qoslat.c
devfreq_simple_dev.c
exynos-bus.c
governor.h
governor_bw_hwmon.c devfreq: governor_bw_hwmon: fix deadlock warning due to state_lock usage 2026-05-25 19:48:33 +00:00
governor_bw_hwmon.h
governor_cache_hwmon.c
governor_cache_hwmon.h
governor_cpufreq.c
governor_memlat.c
governor_memlat.h
governor_passive.c
governor_performance.c
governor_powersave.c
governor_simpleondemand.c
governor_userspace.c PM/devfreq: governor: Add a private governor_data for governor 2023-01-18 11:41:52 +01:00
Kconfig
Makefile
rk3399_dmc.c PM / devfreq: rk3399_dmc: Disable edev on remove() 2022-06-14 18:11:29 +02:00
tegra20-devfreq.c
tegra30-devfreq.c