mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-24 20:54:10 +08:00
cpuidle: remove cpuidle_unregister_governor()
cpuidle_unregister_governor() and cpuidle_replace_governor() aren't used anymore and can be removed. They were used by cpufreq governors earlier, but since the governors can't be compiled as modules any more, these two functions aren't necessary. Suggested-by: Daniel Lezcano <daniel.lezcano@linaro.org> Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
This commit is contained in:
parent
d7c7f10326
commit
f60e230f6b
@ -25,5 +25,4 @@ kernel configuration and platform will be selected by cpuidle.
|
||||
|
||||
Interfaces:
|
||||
extern int cpuidle_register_governor(struct cpuidle_governor *gov);
|
||||
extern void cpuidle_unregister_governor(struct cpuidle_governor *gov);
|
||||
struct cpuidle_governor
|
||||
|
@ -96,46 +96,3 @@ int cpuidle_register_governor(struct cpuidle_governor *gov)
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
/**
|
||||
* cpuidle_replace_governor - find a replacement governor
|
||||
* @exclude_rating: the rating that will be skipped while looking for
|
||||
* new governor.
|
||||
*/
|
||||
static struct cpuidle_governor *cpuidle_replace_governor(int exclude_rating)
|
||||
{
|
||||
struct cpuidle_governor *gov;
|
||||
struct cpuidle_governor *ret_gov = NULL;
|
||||
unsigned int max_rating = 0;
|
||||
|
||||
list_for_each_entry(gov, &cpuidle_governors, governor_list) {
|
||||
if (gov->rating == exclude_rating)
|
||||
continue;
|
||||
if (gov->rating > max_rating) {
|
||||
max_rating = gov->rating;
|
||||
ret_gov = gov;
|
||||
}
|
||||
}
|
||||
|
||||
return ret_gov;
|
||||
}
|
||||
|
||||
/**
|
||||
* cpuidle_unregister_governor - unregisters a governor
|
||||
* @gov: the governor
|
||||
*/
|
||||
void cpuidle_unregister_governor(struct cpuidle_governor *gov)
|
||||
{
|
||||
if (!gov)
|
||||
return;
|
||||
|
||||
mutex_lock(&cpuidle_lock);
|
||||
if (gov == cpuidle_curr_governor) {
|
||||
struct cpuidle_governor *new_gov;
|
||||
new_gov = cpuidle_replace_governor(gov->rating);
|
||||
cpuidle_switch_governor(new_gov);
|
||||
}
|
||||
list_del(&gov->governor_list);
|
||||
mutex_unlock(&cpuidle_lock);
|
||||
}
|
||||
|
||||
|
@ -195,16 +195,10 @@ struct cpuidle_governor {
|
||||
};
|
||||
|
||||
#ifdef CONFIG_CPU_IDLE
|
||||
|
||||
extern int cpuidle_register_governor(struct cpuidle_governor *gov);
|
||||
extern void cpuidle_unregister_governor(struct cpuidle_governor *gov);
|
||||
|
||||
#else
|
||||
|
||||
static inline int cpuidle_register_governor(struct cpuidle_governor *gov)
|
||||
{return 0;}
|
||||
static inline void cpuidle_unregister_governor(struct cpuidle_governor *gov) { }
|
||||
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_ARCH_HAS_CPU_RELAX
|
||||
|
Loading…
Reference in New Issue
Block a user