aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKeir Fraser <keir.fraser@citrix.com>2010-05-10 09:45:34 +0100
committerKeir Fraser <keir.fraser@citrix.com>2010-05-10 09:45:34 +0100
commit6d8b575d66fe4840fee1e7d3b892782d728c0509 (patch)
treece510fe7ac7adbfef1753e46bfa272302330674a
parentd7be97a877914dc25a1df6d8a231a0e2d575d786 (diff)
downloadxen-6d8b575d66fe4840fee1e7d3b892782d728c0509.tar.gz
xen-6d8b575d66fe4840fee1e7d3b892782d728c0509.tar.bz2
xen-6d8b575d66fe4840fee1e7d3b892782d728c0509.zip
vmx, tboot: Check the correct in/outside-SMX flag when init'ing VMX.
Signed-off-by: Shane Wang <shane.wang@intel.com> Signed-off-by: Keir Fraser <keir.fraser@citrix.com> xen-unstable changeset: 21266:6d21da6feb59 xen-unstable date: Tue May 04 12:29:05 2010 +0100
-rw-r--r--xen/arch/x86/hvm/vmx/vmcs.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/xen/arch/x86/hvm/vmx/vmcs.c b/xen/arch/x86/hvm/vmx/vmcs.c
index fd16ad2248..5e6ef6915d 100644
--- a/xen/arch/x86/hvm/vmx/vmcs.c
+++ b/xen/arch/x86/hvm/vmx/vmcs.c
@@ -360,8 +360,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;