KVM: nVMX: Introduce vmcs12: a VMCS structure for L1
authorNadav Har'El <nyh@il.ibm.com>
Wed, 25 May 2011 20:03:55 +0000 (23:03 +0300)
committerAvi Kivity <avi@redhat.com>
Tue, 12 Jul 2011 08:45:10 +0000 (11:45 +0300)
commita9d30f33dd21b67b2f4db09f3dfe63a7c390d1b3
treefabac8174f7dbf9322f593ee9e45632d4ae26379
parent5e1746d6205d1efa3193cc0c67aa2d15e54799bd
KVM: nVMX: Introduce vmcs12: a VMCS structure for L1

An implementation of VMX needs to define a VMCS structure. This structure
is kept in guest memory, but is opaque to the guest (who can only read or
write it with VMX instructions).

This patch starts to define the VMCS structure which our nested VMX
implementation will present to L1. We call it "vmcs12", as it is the VMCS
that L1 keeps for its L2 guest. We will add more content to this structure
in later patches.

This patch also adds the notion (as required by the VMX spec) of L1's "current
VMCS", and finally includes utility functions for mapping the guest-allocated
VMCSs in host memory.

Signed-off-by: Nadav Har'El <nyh@il.ibm.com>
Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
arch/x86/kvm/vmx.c