x86, cpufeature: Fix cpuid leaf 7 feature detection
authorFenghua Yu <fenghua.yu@intel.com>
Tue, 17 May 2011 19:33:26 +0000 (12:33 -0700)
committerH. Peter Anvin <hpa@linux.intel.com>
Tue, 17 May 2011 20:36:29 +0000 (13:36 -0700)
CPUID leaf 7, subleaf 0 returns the maximum subleaf in EAX, not the
number of subleaves.  Since so far only subleaf 0 is defined (and only
the EBX bitfield) we do not need to qualify the test.

Signed-off-by: Fenghua Yu <fenghua.yu@intel.com>
Link: http://lkml.kernel.org/r/1305660806-17519-1-git-send-email-fenghua.yu@intel.com
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
Cc: <stable@kernel.org> 2.6.36..39
arch/x86/kernel/cpu/common.c

index e2ced00..173f3a3 100644 (file)
@@ -565,8 +565,7 @@ void __cpuinit get_cpu_cap(struct cpuinfo_x86 *c)
 
                cpuid_count(0x00000007, 0, &eax, &ebx, &ecx, &edx);
 
-               if (eax > 0)
-                       c->x86_capability[9] = ebx;
+               c->x86_capability[9] = ebx;
        }
 
        /* AMD-defined flags: level 0x80000001 */