[CPUFREQ] x86: use num_online_nodes to get physical cpus numbers for

powernow_k8

[PATCH] x86: use num_online_nodes to get physical cpus numbers for powernow_k8

For opteron based system, don't assume all physical cpus have the same booted cpus even same cores. esp for downcore case.

Signed-off-by: Yinghai Lu <yinghai.sun.com>
Signed-off-by: Dave Jones <davej@redhat.com>
This commit is contained in:
Yinghai Lu 2007-08-22 18:44:20 -07:00 committed by Dave Jones
parent 804b3f9a16
commit c925401b6d

View File

@ -1325,21 +1325,16 @@ static struct cpufreq_driver cpufreq_amd64_driver = {
static int __cpuinit powernowk8_init(void)
{
unsigned int i, supported_cpus = 0;
unsigned int booted_cores = 1;
for_each_online_cpu(i) {
if (check_supported_cpu(i))
supported_cpus++;
}
#ifdef CONFIG_SMP
booted_cores = cpu_data[0].booted_cores;
#endif
if (supported_cpus == num_online_cpus()) {
printk(KERN_INFO PFX "Found %d %s "
"processors (%d cpu cores) (" VERSION ")\n",
supported_cpus/booted_cores,
num_online_nodes(),
boot_cpu_data.x86_model_id, supported_cpus);
return cpufreq_register_driver(&cpufreq_amd64_driver);
}