Commit 193de0c7 authored by KAMEZAWA Hiroyuki's avatar KAMEZAWA Hiroyuki Committed by Len Brown

ACPI: use for_each_possible_cpu() instead of for_each_cpu()

for_each_cpu() actually iterates across all possible CPUs.  We've had mistakes
in the past where people were using for_each_cpu() where they should have been
iterating across only online or present CPUs.  This is inefficient and
possibly buggy.

We're renaming for_each_cpu() to for_each_possible_cpu() to avoid this in the
future.
Signed-off-by: default avatarKAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
Signed-off-by: default avatarLen Brown <len.brown@intel.com>
parent 9011bff4
...@@ -628,7 +628,7 @@ int acpi_processor_preregister_performance( ...@@ -628,7 +628,7 @@ int acpi_processor_preregister_performance(
retval = 0; retval = 0;
/* Call _PSD for all CPUs */ /* Call _PSD for all CPUs */
for_each_cpu(i) { for_each_possible_cpu(i) {
pr = processors[i]; pr = processors[i];
if (!pr) { if (!pr) {
/* Look only at processors in ACPI namespace */ /* Look only at processors in ACPI namespace */
...@@ -659,7 +659,7 @@ int acpi_processor_preregister_performance( ...@@ -659,7 +659,7 @@ int acpi_processor_preregister_performance(
* Now that we have _PSD data from all CPUs, lets setup P-state * Now that we have _PSD data from all CPUs, lets setup P-state
* domain info. * domain info.
*/ */
for_each_cpu(i) { for_each_possible_cpu(i) {
pr = processors[i]; pr = processors[i];
if (!pr) if (!pr)
continue; continue;
...@@ -680,7 +680,7 @@ int acpi_processor_preregister_performance( ...@@ -680,7 +680,7 @@ int acpi_processor_preregister_performance(
} }
cpus_clear(covered_cpus); cpus_clear(covered_cpus);
for_each_cpu(i) { for_each_possible_cpu(i) {
pr = processors[i]; pr = processors[i];
if (!pr) if (!pr)
continue; continue;
...@@ -704,7 +704,7 @@ int acpi_processor_preregister_performance( ...@@ -704,7 +704,7 @@ int acpi_processor_preregister_performance(
pr->performance->shared_type = CPUFREQ_SHARED_TYPE_ANY; pr->performance->shared_type = CPUFREQ_SHARED_TYPE_ANY;
} }
for_each_cpu(j) { for_each_possible_cpu(j) {
if (i == j) if (i == j)
continue; continue;
...@@ -733,7 +733,7 @@ int acpi_processor_preregister_performance( ...@@ -733,7 +733,7 @@ int acpi_processor_preregister_performance(
count++; count++;
} }
for_each_cpu(j) { for_each_possible_cpu(j) {
if (i == j) if (i == j)
continue; continue;
...@@ -757,7 +757,7 @@ int acpi_processor_preregister_performance( ...@@ -757,7 +757,7 @@ int acpi_processor_preregister_performance(
ACPI_DEBUG_PRINT((ACPI_DB_ERROR, "Error while parsing _PSD domain information. Assuming no coordination\n")); ACPI_DEBUG_PRINT((ACPI_DB_ERROR, "Error while parsing _PSD domain information. Assuming no coordination\n"));
} }
for_each_cpu(i) { for_each_possible_cpu(i) {
pr = processors[i]; pr = processors[i];
if (!pr || !pr->performance) if (!pr || !pr->performance)
continue; continue;
......
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