aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/kernel/cpu/common.c
diff options
context:
space:
mode:
authorJacob Pan <jacob.jun.pan@linux.intel.com>2010-05-19 15:01:23 -0400
committerH. Peter Anvin <hpa@linux.intel.com>2010-05-19 16:32:12 -0400
commit1dedefd1a066a795a87afca9c0236e1a94de9bf6 (patch)
treef973764a396a75c7f69c5b8e91875d48b9645e52 /arch/x86/kernel/cpu/common.c
parent537b60d17894b7c19a6060feae40299d7109d6e7 (diff)
x86: detect scattered cpuid features earlier
Some extra CPU features such as ARAT is needed in early boot so that x86_init function pointers can be set up properly. http://lkml.org/lkml/2010/5/18/519 At start_kernel() level, this patch moves init_scattered_cpuid_features() from check_bugs() to setup_arch() -> early_cpu_init() which is earlier than platform specific x86_init layer setup. Suggested by HPA. Signed-off-by: Jacob Pan <jacob.jun.pan@linux.intel.com> LKML-Reference: <1274295685-6774-2-git-send-email-jacob.jun.pan@linux.intel.com> Acked-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
Diffstat (limited to 'arch/x86/kernel/cpu/common.c')
-rw-r--r--arch/x86/kernel/cpu/common.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/x86/kernel/cpu/common.c b/arch/x86/kernel/cpu/common.c
index c1c00d0b1692..284bf89ddae2 100644
--- a/arch/x86/kernel/cpu/common.c
+++ b/arch/x86/kernel/cpu/common.c
@@ -576,6 +576,7 @@ static void __cpuinit get_cpu_cap(struct cpuinfo_x86 *c)
576 if (c->extended_cpuid_level >= 0x80000007) 576 if (c->extended_cpuid_level >= 0x80000007)
577 c->x86_power = cpuid_edx(0x80000007); 577 c->x86_power = cpuid_edx(0x80000007);
578 578
579 init_scattered_cpuid_features(c);
579} 580}
580 581
581static void __cpuinit identify_cpu_without_cpuid(struct cpuinfo_x86 *c) 582static void __cpuinit identify_cpu_without_cpuid(struct cpuinfo_x86 *c)
@@ -731,7 +732,6 @@ static void __cpuinit generic_identify(struct cpuinfo_x86 *c)
731 732
732 get_model_name(c); /* Default name */ 733 get_model_name(c); /* Default name */
733 734
734 init_scattered_cpuid_features(c);
735 detect_nopl(c); 735 detect_nopl(c);
736} 736}
737 737