Commit eb608521f1e25a8c14295b6d9a3853c3cd8c6cf8

Authored by Viresh Kumar
Committed by Rafael J. Wysocki
1 parent c88a1f8b96

cpufreq: Use cpufreq_policy_list for iterating over policies

To iterate over all policies we currently iterate over all CPUs and
then get the policy for each of them.  Let's use the newly created
cpufreq_policy_list for this purpose.

[rjw: Changelog]
Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>

Showing 1 changed file with 5 additions and 5 deletions Side-by-side Diff

drivers/cpufreq/cpufreq.c
... ... @@ -985,8 +985,8 @@
985 985 struct cpufreq_policy *policy;
986 986 unsigned long flags;
987 987 #ifdef CONFIG_HOTPLUG_CPU
  988 + struct cpufreq_policy *tpolicy;
988 989 struct cpufreq_governor *gov;
989   - int sibling;
990 990 #endif
991 991  
992 992 if (cpu_is_offline(cpu))
993 993  
... ... @@ -1006,11 +1006,11 @@
1006 1006 #ifdef CONFIG_HOTPLUG_CPU
1007 1007 /* Check if this cpu was hot-unplugged earlier and has siblings */
1008 1008 read_lock_irqsave(&cpufreq_driver_lock, flags);
1009   - for_each_online_cpu(sibling) {
1010   - struct cpufreq_policy *cp = per_cpu(cpufreq_cpu_data, sibling);
1011   - if (cp && cpumask_test_cpu(cpu, cp->related_cpus)) {
  1009 + list_for_each_entry(tpolicy, &cpufreq_policy_list, policy_list) {
  1010 + if (cpumask_test_cpu(cpu, tpolicy->related_cpus)) {
1012 1011 read_unlock_irqrestore(&cpufreq_driver_lock, flags);
1013   - return cpufreq_add_policy_cpu(cp, cpu, dev, frozen);
  1012 + return cpufreq_add_policy_cpu(tpolicy, cpu, dev,
  1013 + frozen);
1014 1014 }
1015 1015 }
1016 1016 read_unlock_irqrestore(&cpufreq_driver_lock, flags);