* [PATCH] Handle CPU cores in CPU cache information
@ 2005-06-13 23:29 Venkatesh Pallipadi
0 siblings, 0 replies; only message in thread
From: Venkatesh Pallipadi @ 2005-06-13 23:29 UTC (permalink / raw)
To: Andrew Morton; +Cc: linux-kernel
Handle the case of all the cores in a package sharing the cache,
in cache_shared_cpu_map_setup().
Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>
diff -purN linux-2.6.12-rc4-mm2/arch/i386/kernel/cpu/intel_cacheinfo.c linux-2.6.12-rc4-mm2-cache/arch/i386/kernel/cpu/intel_cacheinfo.c
--- linux-2.6.12-rc4-mm2/arch/i386/kernel/cpu/intel_cacheinfo.c 2005-05-17 05:50:03.000000000 -0700
+++ linux-2.6.12-rc4-mm2-cache/arch/i386/kernel/cpu/intel_cacheinfo.c 2005-06-11 04:53:59.749155936 -0700
@@ -305,6 +305,9 @@ static void __devinit cache_shared_cpu_m
{
struct _cpuid4_info *this_leaf;
unsigned long num_threads_sharing;
+#ifdef CONFIG_X86_HT
+ struct cpuinfo_x86 *c = cpu_data + cpu;
+#endif
this_leaf = CPUID4_INFO_IDX(cpu, index);
num_threads_sharing = 1 + this_leaf->eax.split.num_threads_sharing;
@@ -314,10 +317,12 @@ static void __devinit cache_shared_cpu_m
#ifdef CONFIG_X86_HT
else if (num_threads_sharing == smp_num_siblings)
this_leaf->shared_cpu_map = cpu_sibling_map[cpu];
-#endif
+ else if (num_threads_sharing == (c->x86_num_cores * smp_num_siblings))
+ this_leaf->shared_cpu_map = cpu_core_map[cpu];
else
- printk(KERN_INFO "Number of CPUs sharing cache didn't match "
+ printk(KERN_DEBUG "Number of CPUs sharing cache didn't match "
"any known set of CPUs\n");
+#endif
}
#else
static void __init cache_shared_cpu_map_setup(unsigned int cpu, int index) {}
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2005-06-13 23:32 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-06-13 23:29 [PATCH] Handle CPU cores in CPU cache information Venkatesh Pallipadi
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Powered by JetHome