Commit 77533ee3 authored by Dave Jones's avatar Dave Jones Committed by Dave Jones

[CPUFREQ] don't care about "rmmod -f". It's expected to break things.

More from Dominik
parent 3d48b9e4
...@@ -627,33 +627,10 @@ EXPORT_SYMBOL_GPL(cpufreq_register_governor); ...@@ -627,33 +627,10 @@ EXPORT_SYMBOL_GPL(cpufreq_register_governor);
void cpufreq_unregister_governor(struct cpufreq_governor *governor) void cpufreq_unregister_governor(struct cpufreq_governor *governor)
{ {
unsigned int i;
if (!governor) if (!governor)
return; return;
down(&cpufreq_governor_sem); down(&cpufreq_governor_sem);
/*
* Unless the user uses rmmod -f, we can be safe. But we never
* know, so check whether if it's currently used. If so,
* stop it and replace it with the default governor.
*/
for (i=0; i<NR_CPUS; i++)
{
if (!cpufreq_cpu_get(i))
continue;
if ((cpufreq_driver->policy[i].policy == CPUFREQ_POLICY_GOVERNOR) &&
(cpufreq_driver->policy[i].governor == governor)) {
cpufreq_governor(i, CPUFREQ_GOV_STOP);
cpufreq_driver->policy[i].policy = CPUFREQ_POLICY_PERFORMANCE;
cpufreq_governor(i, CPUFREQ_GOV_START);
cpufreq_governor(i, CPUFREQ_GOV_LIMITS);
}
cpufreq_cpu_put(i);
}
/* now we can safely remove it from the list */
list_del(&governor->governor_list); list_del(&governor->governor_list);
up(&cpufreq_governor_sem); up(&cpufreq_governor_sem);
return; return;
......
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