diff options
| -rw-r--r-- | arch/x86_64/kernel/setup.c | 13 | ||||
| -rw-r--r-- | include/asm-x86_64/processor.h | 2 |
2 files changed, 7 insertions, 8 deletions
diff --git a/arch/x86_64/kernel/setup.c b/arch/x86_64/kernel/setup.c index c091fa114514..7ba443584a0c 100644 --- a/arch/x86_64/kernel/setup.c +++ b/arch/x86_64/kernel/setup.c | |||
| @@ -673,7 +673,7 @@ static int __init get_model_name(struct cpuinfo_x86 *c) | |||
| 673 | { | 673 | { |
| 674 | unsigned int *v; | 674 | unsigned int *v; |
| 675 | 675 | ||
| 676 | if (c->x86_cpuid_level < 0x80000004) | 676 | if (c->extended_cpuid_level < 0x80000004) |
| 677 | return 0; | 677 | return 0; |
| 678 | 678 | ||
| 679 | v = (unsigned int *) c->x86_model_id; | 679 | v = (unsigned int *) c->x86_model_id; |
| @@ -689,7 +689,7 @@ static void __init display_cacheinfo(struct cpuinfo_x86 *c) | |||
| 689 | { | 689 | { |
| 690 | unsigned int n, dummy, eax, ebx, ecx, edx; | 690 | unsigned int n, dummy, eax, ebx, ecx, edx; |
| 691 | 691 | ||
| 692 | n = c->x86_cpuid_level; | 692 | n = c->extended_cpuid_level; |
| 693 | 693 | ||
| 694 | if (n >= 0x80000005) { | 694 | if (n >= 0x80000005) { |
| 695 | cpuid(0x80000005, &dummy, &ebx, &ecx, &edx); | 695 | cpuid(0x80000005, &dummy, &ebx, &ecx, &edx); |
| @@ -781,7 +781,7 @@ static int __init init_amd(struct cpuinfo_x86 *c) | |||
| 781 | } | 781 | } |
| 782 | display_cacheinfo(c); | 782 | display_cacheinfo(c); |
| 783 | 783 | ||
| 784 | if (c->x86_cpuid_level >= 0x80000008) { | 784 | if (c->extended_cpuid_level >= 0x80000008) { |
| 785 | c->x86_num_cores = (cpuid_ecx(0x80000008) & 0xff) + 1; | 785 | c->x86_num_cores = (cpuid_ecx(0x80000008) & 0xff) + 1; |
| 786 | if (c->x86_num_cores & (c->x86_num_cores - 1)) | 786 | if (c->x86_num_cores & (c->x86_num_cores - 1)) |
| 787 | c->x86_num_cores = 1; | 787 | c->x86_num_cores = 1; |
| @@ -841,7 +841,6 @@ static void __init detect_ht(struct cpuinfo_x86 *c) | |||
| 841 | if (smp_num_siblings & (smp_num_siblings - 1)) | 841 | if (smp_num_siblings & (smp_num_siblings - 1)) |
| 842 | index_msb++; | 842 | index_msb++; |
| 843 | 843 | ||
| 844 | /* RED-PEN surely this must run in the non HT case too! -AK */ | ||
| 845 | cpu_core_id[cpu] = phys_pkg_id(index_msb); | 844 | cpu_core_id[cpu] = phys_pkg_id(index_msb); |
| 846 | 845 | ||
| 847 | if (c->x86_num_cores > 1) | 846 | if (c->x86_num_cores > 1) |
| @@ -878,7 +877,7 @@ static void __init init_intel(struct cpuinfo_x86 *c) | |||
| 878 | unsigned n; | 877 | unsigned n; |
| 879 | 878 | ||
| 880 | init_intel_cacheinfo(c); | 879 | init_intel_cacheinfo(c); |
| 881 | n = c->x86_cpuid_level; | 880 | n = c->extended_cpuid_level; |
| 882 | if (n >= 0x80000008) { | 881 | if (n >= 0x80000008) { |
| 883 | unsigned eax = cpuid_eax(0x80000008); | 882 | unsigned eax = cpuid_eax(0x80000008); |
| 884 | c->x86_virt_bits = (eax >> 8) & 0xff; | 883 | c->x86_virt_bits = (eax >> 8) & 0xff; |
| @@ -927,7 +926,7 @@ void __init early_identify_cpu(struct cpuinfo_x86 *c) | |||
| 927 | c->x86_cache_alignment = c->x86_clflush_size; | 926 | c->x86_cache_alignment = c->x86_clflush_size; |
| 928 | c->x86_num_cores = 1; | 927 | c->x86_num_cores = 1; |
| 929 | c->x86_apicid = c == &boot_cpu_data ? 0 : c - cpu_data; | 928 | c->x86_apicid = c == &boot_cpu_data ? 0 : c - cpu_data; |
| 930 | c->x86_cpuid_level = 0; | 929 | c->extended_cpuid_level = 0; |
| 931 | memset(&c->x86_capability, 0, sizeof c->x86_capability); | 930 | memset(&c->x86_capability, 0, sizeof c->x86_capability); |
| 932 | 931 | ||
| 933 | /* Get vendor name */ | 932 | /* Get vendor name */ |
| @@ -974,7 +973,7 @@ void __init identify_cpu(struct cpuinfo_x86 *c) | |||
| 974 | 973 | ||
| 975 | /* AMD-defined flags: level 0x80000001 */ | 974 | /* AMD-defined flags: level 0x80000001 */ |
| 976 | xlvl = cpuid_eax(0x80000000); | 975 | xlvl = cpuid_eax(0x80000000); |
| 977 | c->x86_cpuid_level = xlvl; | 976 | c->extended_cpuid_level = xlvl; |
| 978 | if ((xlvl & 0xffff0000) == 0x80000000) { | 977 | if ((xlvl & 0xffff0000) == 0x80000000) { |
| 979 | if (xlvl >= 0x80000001) { | 978 | if (xlvl >= 0x80000001) { |
| 980 | c->x86_capability[1] = cpuid_edx(0x80000001); | 979 | c->x86_capability[1] = cpuid_edx(0x80000001); |
diff --git a/include/asm-x86_64/processor.h b/include/asm-x86_64/processor.h index 45ab74e8f141..f0581c35628e 100644 --- a/include/asm-x86_64/processor.h +++ b/include/asm-x86_64/processor.h | |||
| @@ -64,7 +64,7 @@ struct cpuinfo_x86 { | |||
| 64 | __u8 x86_num_cores; | 64 | __u8 x86_num_cores; |
| 65 | __u8 x86_apicid; | 65 | __u8 x86_apicid; |
| 66 | __u32 x86_power; | 66 | __u32 x86_power; |
| 67 | __u32 x86_cpuid_level; /* Max CPUID function supported */ | 67 | __u32 extended_cpuid_level; /* Max extended CPUID function supported */ |
| 68 | unsigned long loops_per_jiffy; | 68 | unsigned long loops_per_jiffy; |
| 69 | } ____cacheline_aligned; | 69 | } ____cacheline_aligned; |
| 70 | 70 | ||
