[PATCH] x86-64/i386: Intel HT, Multi core detection fixes
authorSiddha, Suresh B <suresh.b.siddha@intel.com>
Sat, 5 Nov 2005 16:25:54 +0000 (17:25 +0100)
committerLinus Torvalds <torvalds@g5.osdl.org>
Tue, 15 Nov 2005 03:55:16 +0000 (19:55 -0800)
commit94605eff572b727aaad9b4b29bc358b919096503
tree657a848d8ef34d2f94bbad3aa4e5458d2d3f2d2b
parente90f22edf432512219cc2952f5811961abbd164f
[PATCH] x86-64/i386: Intel HT, Multi core detection fixes

Fields obtained through cpuid vector 0x1(ebx[16:23]) and
vector 0x4(eax[14:25], eax[26:31]) indicate the maximum values and might not
always be the same as what is available and what OS sees.  So make sure
"siblings" and "cpu cores" values in /proc/cpuinfo reflect the values as seen
by OS instead of what cpuid instruction says. This will also fix the buggy BIOS
cases (for example where cpuid on a single core cpu says there are "2" siblings,
even when HT is disabled in the BIOS.
http://bugzilla.kernel.org/show_bug.cgi?id=4359)

Signed-off-by: Suresh Siddha <suresh.b.siddha@intel.com>
Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
arch/i386/kernel/cpu/amd.c
arch/i386/kernel/cpu/common.c
arch/i386/kernel/cpu/intel.c
arch/i386/kernel/cpu/intel_cacheinfo.c
arch/i386/kernel/cpu/proc.c
arch/i386/kernel/smpboot.c
arch/x86_64/kernel/setup.c
arch/x86_64/kernel/smpboot.c
include/asm-i386/processor.h
include/asm-x86_64/processor.h
include/linux/bitops.h