diff options
Diffstat (limited to 'arch/i386/kernel/cpu/intel.c')
-rw-r--r-- | arch/i386/kernel/cpu/intel.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/arch/i386/kernel/cpu/intel.c b/arch/i386/kernel/cpu/intel.c index 94a95aa5227..798c2f617e8 100644 --- a/arch/i386/kernel/cpu/intel.c +++ b/arch/i386/kernel/cpu/intel.c | |||
@@ -195,8 +195,14 @@ static void __cpuinit init_intel(struct cpuinfo_x86 *c) | |||
195 | if ((c->x86 == 0xf && c->x86_model >= 0x03) || | 195 | if ((c->x86 == 0xf && c->x86_model >= 0x03) || |
196 | (c->x86 == 0x6 && c->x86_model >= 0x0e)) | 196 | (c->x86 == 0x6 && c->x86_model >= 0x0e)) |
197 | set_bit(X86_FEATURE_CONSTANT_TSC, c->x86_capability); | 197 | set_bit(X86_FEATURE_CONSTANT_TSC, c->x86_capability); |
198 | } | ||
199 | 198 | ||
199 | if (cpu_has_ds) { | ||
200 | unsigned int l1; | ||
201 | rdmsr(MSR_IA32_MISC_ENABLE, l1, l2); | ||
202 | if (!(l1 & (1<<12))) | ||
203 | set_bit(X86_FEATURE_PEBS, c->x86_capability); | ||
204 | } | ||
205 | } | ||
200 | 206 | ||
201 | static unsigned int __cpuinit intel_size_cache(struct cpuinfo_x86 * c, unsigned int size) | 207 | static unsigned int __cpuinit intel_size_cache(struct cpuinfo_x86 * c, unsigned int size) |
202 | { | 208 | { |