diff options
author | Zhang Xiantao <xiantao.zhang@intel.com> | 2013-01-15 11:30:50 +0100 |
---|---|---|
committer | Zhang Xiantao <xiantao.zhang@intel.com> | 2013-01-15 11:30:50 +0100 |
commit | 9ccf55307868063800606499b098ba5ecf8f72cb (patch) | |
tree | 70d486beb88e173f92d06af90ea4f4aa32a42c35 /xen/include/asm-x86/hvm/vmx | |
parent | 2b2793d3ae44a54efa5f910eaa2a39a65c0fd43c (diff) | |
download | xen-9ccf55307868063800606499b098ba5ecf8f72cb.tar.gz xen-9ccf55307868063800606499b098ba5ecf8f72cb.tar.bz2 xen-9ccf55307868063800606499b098ba5ecf8f72cb.zip |
nVMX: virutalize VPID capability to nested VMM
Virtualize VPID for the nested vmm, use host's VPID
to emualte guest's VPID. For each virtual vmentry, if
guest'v vpid is changed, allocate a new host VPID for
L2 guest.
Signed-off-by: Zhang Xiantao <xiantao.zhang@intel.com>
Acked-by: Tim Deegan <tim@xen.org>
Acked-by: Jun Nakajima <jun.nakajima@intel.com>
Acked-by: Eddie Dong <eddie.dong@intel.com>
Committed-by: Jan Beulich <jbeulich@suse.com>
Diffstat (limited to 'xen/include/asm-x86/hvm/vmx')
-rw-r--r-- | xen/include/asm-x86/hvm/vmx/vvmx.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/xen/include/asm-x86/hvm/vmx/vvmx.h b/xen/include/asm-x86/hvm/vmx/vvmx.h index 02c0c72060..b2a2d2136f 100644 --- a/xen/include/asm-x86/hvm/vmx/vvmx.h +++ b/xen/include/asm-x86/hvm/vmx/vvmx.h @@ -37,6 +37,7 @@ struct nestedvmx { uint32_t exit_reason; uint32_t exit_qual; } ept; + uint32_t guest_vpid; }; #define vcpu_2_nvmx(v) (vcpu_nestedhvm(v).u.nvmx) @@ -192,6 +193,7 @@ int nvmx_handle_vmwrite(struct cpu_user_regs *regs); int nvmx_handle_vmresume(struct cpu_user_regs *regs); int nvmx_handle_vmlaunch(struct cpu_user_regs *regs); int nvmx_handle_invept(struct cpu_user_regs *regs); +int nvmx_handle_invvpid(struct cpu_user_regs *regs); int nvmx_msr_read_intercept(unsigned int msr, u64 *msr_content); int nvmx_msr_write_intercept(unsigned int msr, |