[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen-unstable] intel: Stricter check for cpuid feature mask MSR availability.
# HG changeset patch # User Keir Fraser <keir.fraser@xxxxxxxxxx> # Date 1215685602 -3600 # Node ID aab9fbd6ffa0c76c72e5bb906bede14eca6bef44 # Parent a891e0f6ff189647a96e810c47602ff419c7bf22 intel: Stricter check for cpuid feature mask MSR availability. Signed-off-by: Liping Ke <liping.ke@xxxxxxxxx> Signed-off-by: Jun Nakajima <nakajima.jun@xxxxxxxxx> Signed-off-by: Keir Fraser <keir.fraser@xxxxxxxxxx> --- xen/arch/x86/cpu/intel.c | 5 +++-- 1 files changed, 3 insertions(+), 2 deletions(-) diff -r a891e0f6ff18 -r aab9fbd6ffa0 xen/arch/x86/cpu/intel.c --- a/xen/arch/x86/cpu/intel.c Thu Jul 10 10:07:32 2008 +0100 +++ b/xen/arch/x86/cpu/intel.c Thu Jul 10 11:26:42 2008 +0100 @@ -37,13 +37,14 @@ struct movsl_mask movsl_mask __read_most static void __devinit set_cpuidmask(void) { - unsigned int eax, ebx, ecx, edx; + unsigned int eax, ebx, ecx, edx, model; if (!(opt_cpuid_mask_ecx | opt_cpuid_mask_edx)) return; cpuid(0x00000001, &eax, &ebx, &ecx, &edx); - if (eax < 0x00010674) { + model = ((eax & 0xf0000) >> 12) | ((eax & 0xf0) >> 4); + if (!((model == 0x1d) || ((model == 0x17) && ((eax & 0xf) >= 4)))) { printk(XENLOG_ERR "Cannot set CPU feature mask on CPU#%d\n", smp_processor_id()); return; _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |