diff options
-rw-r--r-- | arch/x86_64/kernel/setup.c | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/arch/x86_64/kernel/setup.c b/arch/x86_64/kernel/setup.c index 816203d57e11..a9de8f02671f 100644 --- a/arch/x86_64/kernel/setup.c +++ b/arch/x86_64/kernel/setup.c | |||
@@ -957,15 +957,12 @@ static void __cpuinit detect_ht(struct cpuinfo_x86 *c) | |||
957 | */ | 957 | */ |
958 | static int __cpuinit intel_num_cpu_cores(struct cpuinfo_x86 *c) | 958 | static int __cpuinit intel_num_cpu_cores(struct cpuinfo_x86 *c) |
959 | { | 959 | { |
960 | unsigned int eax; | 960 | unsigned int eax, t; |
961 | 961 | ||
962 | if (c->cpuid_level < 4) | 962 | if (c->cpuid_level < 4) |
963 | return 1; | 963 | return 1; |
964 | 964 | ||
965 | __asm__("cpuid" | 965 | cpuid_count(4, 0, &eax, &t, &t, &t); |
966 | : "=a" (eax) | ||
967 | : "0" (4), "c" (0) | ||
968 | : "bx", "dx"); | ||
969 | 966 | ||
970 | if (eax & 0x1f) | 967 | if (eax & 0x1f) |
971 | return ((eax >> 26) + 1); | 968 | return ((eax >> 26) + 1); |