diff options
author | Andi Kleen <ak@suse.de> | 2005-04-16 18:25:15 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@ppc970.osdl.org> | 2005-04-16 18:25:15 -0400 |
commit | 3dd9d514846cdca1dcef2e4fce666d85e199e844 (patch) | |
tree | 28e60a8b733db213e88b0aee8ef3861a93a6fa48 /arch/i386/kernel/cpu/proc.c | |
parent | f2ea2750fbe56867bc8e0eb595115b14195a3e5e (diff) |
[PATCH] x86_64: add support for Intel dual-core detection and displaying
Appended patch adds the support for Intel dual-core detection and displaying
the core related information in /proc/cpuinfo.
It adds two new fields "core id" and "cpu cores" to x86 /proc/cpuinfo and the
"core id" field for x86_64("cpu cores" field is already present in x86_64).
Number of processor cores in a die is detected using cpuid(4) and this is
documented in IA-32 Intel Architecture Software Developer's Manual (vol 2a)
(http://developer.intel.com/design/pentium4/manuals/index_new.htm#sdm_vol2a)
This patch also adds cpu_core_map similar to cpu_sibling_map.
Slightly hacked by AK.
Signed-off-by: Suresh Siddha <suresh.b.siddha@intel.com>
Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'arch/i386/kernel/cpu/proc.c')
-rw-r--r-- | arch/i386/kernel/cpu/proc.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/arch/i386/kernel/cpu/proc.c b/arch/i386/kernel/cpu/proc.c index 89a2956ee65..0f1125b15b7 100644 --- a/arch/i386/kernel/cpu/proc.c +++ b/arch/i386/kernel/cpu/proc.c | |||
@@ -129,6 +129,14 @@ static int show_cpuinfo(struct seq_file *m, void *v) | |||
129 | seq_printf(m, "\nbogomips\t: %lu.%02lu\n\n", | 129 | seq_printf(m, "\nbogomips\t: %lu.%02lu\n\n", |
130 | c->loops_per_jiffy/(500000/HZ), | 130 | c->loops_per_jiffy/(500000/HZ), |
131 | (c->loops_per_jiffy/(5000/HZ)) % 100); | 131 | (c->loops_per_jiffy/(5000/HZ)) % 100); |
132 | |||
133 | #ifdef CONFIG_SMP | ||
134 | /* Put new fields at the end to lower the probability of | ||
135 | breaking user space parsers. */ | ||
136 | seq_printf(m, "core id\t\t: %d\n", cpu_core_id[n]); | ||
137 | seq_printf(m, "cpu cores\t: %d\n", c->x86_num_cores); | ||
138 | #endif | ||
139 | |||
132 | return 0; | 140 | return 0; |
133 | } | 141 | } |
134 | 142 | ||