android_kernel_oneplus_msm8998/arch/x86/kernel/cpu/cpufreq
Ingo Molnar 50c668d678 Revert "cpumask: use work_on_cpu in acpi-cpufreq.c for drv_read and drv_write"
This reverts commit 7503bfbae8.

Dieter Ries reported bootup soft-hangs and bisected it back to
this commit, and reverting this commit gave him a working system.

The commit introduces work_on_cpu() use into the cpufreq code,
but that is subtly problematic from a lock hierarchy POV: the
hotplug-cpu lock is an highlevel lock that is taken before
lowlevel locks, and in this codepath we are called with the
policy lock taken.

Dieter did not have lockdep enabled so we dont have a nice stack
trace proof for this, but using work_on_cpu() in such a lowlevel
place certainly looks wrong, so we revert the patch.

work_on_cpu() needs to be reworked to be more generally usable.

Reported-by: Dieter Ries <clip2@gmx.de>
Tested-by: Dieter Ries <clip2@gmx.de>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
2009-01-12 19:24:23 +01:00
..
acpi-cpufreq.c Revert "cpumask: use work_on_cpu in acpi-cpufreq.c for drv_read and drv_write" 2009-01-12 19:24:23 +01:00
cpufreq-nforce2.c x86: coding style fixes to x86/kernel/cpu/cpufreq/cpufreq-nforce2.c 2008-06-18 15:00:14 +02:00
e_powersaver.c [CPUFREQ] Remove debugging message from e_powersaver 2008-03-05 14:45:31 -05:00
elanfreq.c [CPUFREQ] Coding style fixes to arch/x86/kernel/cpu/cpufreq/elanfreq.c 2008-10-09 13:52:42 -04:00
gx-suspmod.c [CPUFREQ] gx-suspmod.c: use boot_cpu_data instead of current_cpu_data 2008-02-06 22:57:58 -05:00
Kconfig [CPUFREQ] Remove EXPERIMENTAL annotation from VIA C7 powersaver kconfig. 2008-08-08 16:00:48 -04:00
longhaul.c remove lots of double-semicolons 2009-01-08 08:31:14 -08:00
longhaul.h i386: move kernel/cpu/cpufreq 2007-10-11 11:16:27 +02:00
longrun.c [CPUFREQ] Crusoe: longrun cpufreq module reports false min freq 2008-05-19 18:17:28 -04:00
Makefile i386: move kernel/cpu/cpufreq 2007-10-11 11:16:27 +02:00
p4-clockmod.c cpumask: convert struct cpufreq_policy to cpumask_var_t 2009-01-06 09:05:31 +01:00
powernow-k6.c Update email addresses. 2008-10-20 12:50:03 -07:00
powernow-k7.c cpumask: convert shared_cpu_map in acpi_processor* structs to cpumask_var_t 2009-01-03 19:15:40 +01:00
powernow-k7.h [CPUFREQ] cpufreq: remove CVS keywords 2008-05-19 18:17:49 -04:00
powernow-k8.c cpumask: convert struct cpufreq_policy to cpumask_var_t 2009-01-06 09:05:31 +01:00
powernow-k8.h cpumask: convert struct cpufreq_policy to cpumask_var_t 2009-01-06 09:05:31 +01:00
sc520_freq.c x86: convert cpuinfo_x86 array to a per_cpu array 2007-10-19 20:35:04 +02:00
speedstep-centrino.c cpumask: convert struct cpufreq_policy to cpumask_var_t 2009-01-06 09:05:31 +01:00
speedstep-ich.c cpumask: convert struct cpufreq_policy to cpumask_var_t 2009-01-06 09:05:31 +01:00
speedstep-lib.c [CPUFREQ] add to speedstep-lib additional fsb values for core processors 2008-12-05 15:20:11 -05:00
speedstep-lib.h i386: move kernel/cpu/cpufreq 2007-10-11 11:16:27 +02:00
speedstep-smi.c x86, cpufreq: fix Speedfreq-SMI call that clobbers ECX 2008-03-26 22:23:40 +01:00