]> xenbits.xensource.com Git - xen.git/commitdiff
vmx, tboot: Check the correct in/outside-SMX flag when init'ing VMX.
authorKeir Fraser <keir.fraser@citrix.com>
Tue, 4 May 2010 11:29:05 +0000 (12:29 +0100)
committerKeir Fraser <keir.fraser@citrix.com>
Tue, 4 May 2010 11:29:05 +0000 (12:29 +0100)
Signed-off-by: Shane Wang <shane.wang@intel.com>
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
xen/arch/x86/hvm/vmx/vmcs.c

index 171b595eab0ef4e88f6faa03c14431940cc08e6e..c3bfaa9d251516fe1576de92d6b0541bc2e7a599 100644 (file)
@@ -376,8 +376,9 @@ int vmx_cpu_up(void)
     bios_locked = !!(eax & IA32_FEATURE_CONTROL_MSR_LOCK);
     if ( bios_locked )
     {
-        if ( !(eax & (IA32_FEATURE_CONTROL_MSR_ENABLE_VMXON_OUTSIDE_SMX |
-                      IA32_FEATURE_CONTROL_MSR_ENABLE_VMXON_INSIDE_SMX)) )
+        if ( !(eax & (tboot_in_measured_env()
+                      ? IA32_FEATURE_CONTROL_MSR_ENABLE_VMXON_INSIDE_SMX
+                      : IA32_FEATURE_CONTROL_MSR_ENABLE_VMXON_OUTSIDE_SMX)) )
         {
             printk("CPU%d: VMX disabled by BIOS.\n", cpu);
             return 0;