nested vmx: enable Descriptor-table exiting for L1 VMM

Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
Acked-by: Jun Nakajima <jun.nakajima@intel.com>
Committed-by: Keir Fraser <keir@xen.org>
This commit is contained in:
Dongxiao Xu committed 2012-11-30 09:23:57 +00:00
1 parent 6034456b6f
commit d2bddeb9d5
2 files changed
+8 -1

No files matched your search

+7 -1
View File
@@ -1300,7 +1300,7 @@ int nvmx_msr_read_intercept(unsigned int msr, u64 *msr_content)
break;
case MSR_IA32_VMX_PROCBASED_CTLS2:
/* 1-seetings */
data = 0;
data = SECONDARY_EXEC_DESCRIPTOR_TABLE_EXITING;
/* 0-settings */
tmp = 0;
data = (data << 32) | tmp;
@@ -1507,6 +1507,12 @@ int nvmx_n2_vmexit_handler(struct cpu_user_regs *regs,
if ( ctrl & CPU_BASED_MONITOR_TRAP_FLAG)
nvcpu->nv_vmexit_pending = 1;
break;
case EXIT_REASON_ACCESS_GDTR_OR_IDTR:
case EXIT_REASON_ACCESS_LDTR_OR_TR:
ctrl = __n2_secondary_exec_control(v);
if ( ctrl & SECONDARY_EXEC_DESCRIPTOR_TABLE_EXITING )
nvcpu->nv_vmexit_pending = 1;
break;
/* L1 has priority handling several other types of exits */
case EXIT_REASON_HLT:
ctrl = __n2_exec_control(v);
+1
View File
@@ -179,6 +179,7 @@ extern u32 vmx_vmentry_control;
#define SECONDARY_EXEC_VIRTUALIZE_APIC_ACCESSES 0x00000001
#define SECONDARY_EXEC_ENABLE_EPT 0x00000002
#define SECONDARY_EXEC_DESCRIPTOR_TABLE_EXITING 0x00000004
#define SECONDARY_EXEC_ENABLE_RDTSCP 0x00000008
#define SECONDARY_EXEC_ENABLE_VPID 0x00000020
#define SECONDARY_EXEC_WBINVD_EXITING 0x00000040
Reference in new issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.