aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndreas Herrmann <andreas.herrmann3@amd.com>2009-04-09 09:05:10 -0400
committerIngo Molnar <mingo@elte.hu>2009-04-10 08:21:40 -0400
commitbda869c614c937c318547c3ee1d65a316b693c21 (patch)
tree7c18363d0a77018e0ad690a9ad020d7d0f63427f
parenta0d22f485af1553060b4094ee0154537a8f6a8a6 (diff)
x86: cacheinfo: use L3 cache index disable feature only for CPUs that support it
AMD family 0x11 CPU doesn't support the feature. Some AMD family 0x10 CPUs do not support it or have an erratum, see erratum #382 in "Revision Guide for AMD Family 10h Processors, 41322 Rev. 3.40 February 2009". Signed-off-by: Andreas Herrmann <andreas.herrmann3@amd.com> CC: Mark Langsdorf <mark.langsdorf@amd.com> Cc: Andrew Morton <akpm@linux-foundation.org> LKML-Reference: <20090409130510.GG31527@alberich.amd.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
-rw-r--r--arch/x86/kernel/cpu/intel_cacheinfo.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/arch/x86/kernel/cpu/intel_cacheinfo.c b/arch/x86/kernel/cpu/intel_cacheinfo.c
index 483eda96e102..72401264912c 100644
--- a/arch/x86/kernel/cpu/intel_cacheinfo.c
+++ b/arch/x86/kernel/cpu/intel_cacheinfo.c
@@ -291,6 +291,14 @@ amd_check_l3_disable(int index, struct _cpuid4_info_regs *this_leaf)
291{ 291{
292 if (index < 3) 292 if (index < 3)
293 return; 293 return;
294
295 if (boot_cpu_data.x86 == 0x11)
296 return;
297
298 /* see erratum #382 */
299 if ((boot_cpu_data.x86 == 0x10) && (boot_cpu_data.x86_model < 0x8))
300 return;
301
294 this_leaf->can_disable = 1; 302 this_leaf->can_disable = 1;
295} 303}
296 304