diff options
Diffstat (limited to 'arch/x86/kernel/cpu/common.c')
| -rw-r--r-- | arch/x86/kernel/cpu/common.c | 23 | 
1 files changed, 11 insertions, 12 deletions
| diff --git a/arch/x86/kernel/cpu/common.c b/arch/x86/kernel/cpu/common.c index 809eda03c527..bcc9ccc220c9 100644 --- a/arch/x86/kernel/cpu/common.c +++ b/arch/x86/kernel/cpu/common.c @@ -804,21 +804,20 @@ static void __init early_identify_cpu(struct cpuinfo_x86 *c)  		identify_cpu_without_cpuid(c);  	/* cyrix could have cpuid enabled via c_identify()*/ -	if (!have_cpuid_p()) -		return; +	if (have_cpuid_p()) { +		cpu_detect(c); +		get_cpu_vendor(c); +		get_cpu_cap(c); -	cpu_detect(c); -	get_cpu_vendor(c); -	get_cpu_cap(c); - -	if (this_cpu->c_early_init) -		this_cpu->c_early_init(c); +		if (this_cpu->c_early_init) +			this_cpu->c_early_init(c); -	c->cpu_index = 0; -	filter_cpuid_features(c, false); +		c->cpu_index = 0; +		filter_cpuid_features(c, false); -	if (this_cpu->c_bsp_init) -		this_cpu->c_bsp_init(c); +		if (this_cpu->c_bsp_init) +			this_cpu->c_bsp_init(c); +	}  	setup_force_cpu_cap(X86_FEATURE_ALWAYS);  	fpu__init_system(c); | 
