Commit 91973de7 authored by Peter Oruba's avatar Peter Oruba Committed by Dave Jones

[CPUFREQ] bugfix cpufreq in combination with performance governor

There is a frequency scaling issue that I encountered with the performance
governor in combination with CPU hotplug.

In cpufreq.c CPU frequency is reduced to its minimum before the CPU gets
unregistered and set offline.  Does that have a particular reason?

Since the (k8-)governor does not monitor CPU frequency that setting also
applies then to the remaining CPU as well and lets the system run on the
lowest frequency although performance is chose as the policy.
Signed-off-by: default avatarPeter Oruba <peter.oruba@amd.com>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarDave Jones <davej@redhat.com>
parent aac22d0a
...@@ -1687,7 +1687,6 @@ static int cpufreq_cpu_callback(struct notifier_block *nfb, ...@@ -1687,7 +1687,6 @@ static int cpufreq_cpu_callback(struct notifier_block *nfb,
{ {
unsigned int cpu = (unsigned long)hcpu; unsigned int cpu = (unsigned long)hcpu;
struct sys_device *sys_dev; struct sys_device *sys_dev;
struct cpufreq_policy *policy;
sys_dev = get_cpu_sysdev(cpu); sys_dev = get_cpu_sysdev(cpu);
if (sys_dev) { if (sys_dev) {
...@@ -1701,11 +1700,6 @@ static int cpufreq_cpu_callback(struct notifier_block *nfb, ...@@ -1701,11 +1700,6 @@ static int cpufreq_cpu_callback(struct notifier_block *nfb,
if (unlikely(lock_policy_rwsem_write(cpu))) if (unlikely(lock_policy_rwsem_write(cpu)))
BUG(); BUG();
policy = cpufreq_cpu_data[cpu];
if (policy) {
__cpufreq_driver_target(policy, policy->min,
CPUFREQ_RELATION_H);
}
__cpufreq_remove_dev(sys_dev); __cpufreq_remove_dev(sys_dev);
break; break;
case CPU_DOWN_FAILED: case CPU_DOWN_FAILED:
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment