[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen-unstable] nested vmx: enable Monitor Trap Flag for L1 VMM
# HG changeset patch # User Dongxiao Xu <dongxiao.xu@xxxxxxxxx> # Date 1354267328 0 # Node ID b08c01906d89db198f01e0f5e8547906c17f0294 # Parent 9d88ac6046d81f89990b484a4da780ae70de61eb nested vmx: enable Monitor Trap Flag for L1 VMM Signed-off-by: Dongxiao Xu <dongxiao.xu@xxxxxxxxx> Acked-by: Jun Nakajima <jun.nakajima@xxxxxxxxx> Committed-by: Keir Fraser <keir@xxxxxxx> --- diff -r 9d88ac6046d8 -r b08c01906d89 xen/arch/x86/hvm/vmx/vvmx.c --- a/xen/arch/x86/hvm/vmx/vvmx.c Thu Nov 29 11:28:18 2012 +0000 +++ b/xen/arch/x86/hvm/vmx/vvmx.c Fri Nov 30 09:22:08 2012 +0000 @@ -1259,7 +1259,7 @@ int nvmx_msr_read_intercept(unsigned int break; case MSR_IA32_VMX_PROCBASED_CTLS: /* 1-seetings */ - data = (CPU_BASED_HLT_EXITING | + data = CPU_BASED_HLT_EXITING | CPU_BASED_VIRTUAL_INTR_PENDING | CPU_BASED_CR8_LOAD_EXITING | CPU_BASED_CR8_STORE_EXITING | @@ -1272,7 +1272,8 @@ int nvmx_msr_read_intercept(unsigned int CPU_BASED_ACTIVATE_IO_BITMAP | CPU_BASED_USE_TSC_OFFSETING | CPU_BASED_UNCOND_IO_EXITING | - CPU_BASED_RDTSC_EXITING); + CPU_BASED_RDTSC_EXITING | + CPU_BASED_MONITOR_TRAP_FLAG; /* bit 1, 4-6,8,13-16,26 must be 1 (refer G4 of SDM) */ tmp = ( (1<<26) | (0xf << 13) | 0x100 | (0x7 << 4) | 0x2); /* 0-settings */ @@ -1475,6 +1476,11 @@ int nvmx_n2_vmexit_handler(struct cpu_us if ( ctrl & CPU_BASED_VIRTUAL_NMI_PENDING ) nvcpu->nv_vmexit_pending = 1; break; + case EXIT_REASON_MONITOR_TRAP_FLAG: + ctrl = __n2_exec_control(v); + if ( ctrl & CPU_BASED_MONITOR_TRAP_FLAG) + nvcpu->nv_vmexit_pending = 1; + break; /* L1 has priority handling several other types of exits */ case EXIT_REASON_HLT: ctrl = __n2_exec_control(v); _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |