Loading drivers/cpufreq/cpufreq_stats.c +25 −2 Original line number Diff line number Diff line Loading @@ -180,7 +180,7 @@ static void cpufreq_stats_free_table(unsigned int cpu) cpufreq_cpu_put(policy); } static int cpufreq_stats_create_table(struct cpufreq_policy *policy, static int __cpufreq_stats_create_table(struct cpufreq_policy *policy, struct cpufreq_frequency_table *table) { unsigned int i, j, count = 0, ret = 0; Loading Loading @@ -253,6 +253,26 @@ error_get_fail: return ret; } static void cpufreq_stats_create_table(unsigned int cpu) { struct cpufreq_policy *policy; struct cpufreq_frequency_table *table; /* * "likely(!policy)" because normally cpufreq_stats will be registered * before cpufreq driver */ policy = cpufreq_cpu_get(cpu); if (likely(!policy)) return; table = cpufreq_frequency_get_table(policy->cpu); if (likely(table)) __cpufreq_stats_create_table(policy, table); cpufreq_cpu_put(policy); } static void cpufreq_stats_update_policy_cpu(struct cpufreq_policy *policy) { struct cpufreq_stats *stat = per_cpu(cpufreq_stats_table, Loading Loading @@ -284,7 +304,7 @@ static int cpufreq_stat_notifier_policy(struct notifier_block *nb, return 0; if (val == CPUFREQ_CREATE_POLICY) ret = cpufreq_stats_create_table(policy, table); ret = __cpufreq_stats_create_table(policy, table); else if (val == CPUFREQ_REMOVE_POLICY) __cpufreq_stats_free_table(policy); Loading Loading @@ -346,6 +366,9 @@ static int __init cpufreq_stats_init(void) if (ret) return ret; for_each_online_cpu(cpu) cpufreq_stats_create_table(cpu); ret = cpufreq_register_notifier(¬ifier_trans_block, CPUFREQ_TRANSITION_NOTIFIER); if (ret) { Loading Loading
drivers/cpufreq/cpufreq_stats.c +25 −2 Original line number Diff line number Diff line Loading @@ -180,7 +180,7 @@ static void cpufreq_stats_free_table(unsigned int cpu) cpufreq_cpu_put(policy); } static int cpufreq_stats_create_table(struct cpufreq_policy *policy, static int __cpufreq_stats_create_table(struct cpufreq_policy *policy, struct cpufreq_frequency_table *table) { unsigned int i, j, count = 0, ret = 0; Loading Loading @@ -253,6 +253,26 @@ error_get_fail: return ret; } static void cpufreq_stats_create_table(unsigned int cpu) { struct cpufreq_policy *policy; struct cpufreq_frequency_table *table; /* * "likely(!policy)" because normally cpufreq_stats will be registered * before cpufreq driver */ policy = cpufreq_cpu_get(cpu); if (likely(!policy)) return; table = cpufreq_frequency_get_table(policy->cpu); if (likely(table)) __cpufreq_stats_create_table(policy, table); cpufreq_cpu_put(policy); } static void cpufreq_stats_update_policy_cpu(struct cpufreq_policy *policy) { struct cpufreq_stats *stat = per_cpu(cpufreq_stats_table, Loading Loading @@ -284,7 +304,7 @@ static int cpufreq_stat_notifier_policy(struct notifier_block *nb, return 0; if (val == CPUFREQ_CREATE_POLICY) ret = cpufreq_stats_create_table(policy, table); ret = __cpufreq_stats_create_table(policy, table); else if (val == CPUFREQ_REMOVE_POLICY) __cpufreq_stats_free_table(policy); Loading Loading @@ -346,6 +366,9 @@ static int __init cpufreq_stats_init(void) if (ret) return ret; for_each_online_cpu(cpu) cpufreq_stats_create_table(cpu); ret = cpufreq_register_notifier(¬ifier_trans_block, CPUFREQ_TRANSITION_NOTIFIER); if (ret) { Loading