[CPUFREQ] x86: use num_online_nodes to get physical cpus numbers for
authorYinghai Lu <Yinghai.Lu@Sun.COM>
Thu, 23 Aug 2007 01:44:20 +0000 (18:44 -0700)
committerDave Jones <davej@redhat.com>
Thu, 4 Oct 2007 22:40:56 +0000 (18:40 -0400)
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>
arch/i386/kernel/cpu/cpufreq/powernow-k8.c

index 34ed53a067307d78166019961f5e431c26f83c1f..372df6e67e8909ba04e7a51662dffe2849b2741f 100644 (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);
        }