提交 f6db44df 编写于 作者: Y Yinghai Lu 提交者: Ingo Molnar

x86: fix typo in filter_cpuid_features()

Impact: fix wrong disabling of cpu features

an amd system got this strange output:

 CPU: CPU feature monitor disabled due to lack of CPUID level 0x5

but in /proc/cpuinfo I have:

 cpuid level	: 5

on intel system:

 CPU: CPU feature monitor disabled due to lack of CPUID level 0x5
 CPU: CPU feature dca disabled due to lack of CPUID level 0x9

but in /proc/cpuinfo i have:

 cpuid level     : 11

Tt turns out there is a typo, and we should use level member in df.
Signed-off-by: NYinghai Lu <yinghai@kernel.org>
Signed-off-by: NIngo Molnar <mingo@elte.hu>
上级 b38b0665
...@@ -241,9 +241,9 @@ static void __cpuinit filter_cpuid_features(struct cpuinfo_x86 *c, bool warn) ...@@ -241,9 +241,9 @@ static void __cpuinit filter_cpuid_features(struct cpuinfo_x86 *c, bool warn)
* signs here... * signs here...
*/ */
if (cpu_has(c, df->feature) && if (cpu_has(c, df->feature) &&
((s32)df->feature < 0 ? ((s32)df->level < 0 ?
(u32)df->feature > (u32)c->extended_cpuid_level : (u32)df->level > (u32)c->extended_cpuid_level :
(s32)df->feature > (s32)c->cpuid_level)) { (s32)df->level > (s32)c->cpuid_level)) {
clear_cpu_cap(c, df->feature); clear_cpu_cap(c, df->feature);
if (warn) if (warn)
printk(KERN_WARNING printk(KERN_WARNING
...@@ -253,7 +253,7 @@ static void __cpuinit filter_cpuid_features(struct cpuinfo_x86 *c, bool warn) ...@@ -253,7 +253,7 @@ static void __cpuinit filter_cpuid_features(struct cpuinfo_x86 *c, bool warn)
df->level); df->level);
} }
} }
} }
/* /*
* Naming convention should be: <Name> [(<Codename>)] * Naming convention should be: <Name> [(<Codename>)]
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册