aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorAndi Kleen <ak@suse.de>2005-01-11 01:49:06 -0800
committerLinus Torvalds <torvalds@ppc970.osdl.org>2005-01-11 01:49:06 -0800
commit7db37701f4555cf83dd454d9f67ffdaad7881606 (patch)
treedae5dcad8c5258fe401cac8023af0e77760b7b0b /arch
parent54465502760ca40444639dcb8114860dda8a5453 (diff)
downloadhistory-7db37701f4555cf83dd454d9f67ffdaad7881606.tar.gz
[PATCH] x86_64: Fix TLB reporting on K8
On K8 L1 TLB is inclusive, so don't include it in the TLB count. 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')
-rw-r--r--arch/x86_64/kernel/setup.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/arch/x86_64/kernel/setup.c b/arch/x86_64/kernel/setup.c
index 7a7be426f5af4b..6b0b38c716080e 100644
--- a/arch/x86_64/kernel/setup.c
+++ b/arch/x86_64/kernel/setup.c
@@ -657,9 +657,9 @@ static void __init display_cacheinfo(struct cpuinfo_x86 *c)
cpuid(0x80000005, &dummy, &ebx, &ecx, &edx);
printk(KERN_INFO "CPU: L1 I Cache: %dK (%d bytes/line), D cache %dK (%d bytes/line)\n",
edx>>24, edx&0xFF, ecx>>24, ecx&0xFF);
- c->x86_cache_size=(ecx>>24)+(edx>>24);
- /* DTLB and ITLB together, but only 4K */
- c->x86_tlbsize = ((ebx>>16)&0xff) + (ebx&0xff);
+ c->x86_cache_size=(ecx>>24)+(edx>>24);
+ /* On K8 L1 TLB is inclusive, so don't count it */
+ c->x86_tlbsize = 0;
}
if (n >= 0x80000006) {