]> asedeno.scripts.mit.edu Git - linux.git/blobdiff - arch/x86/include/asm/kvm_host.h
kvm: nVMX: Introduce KVM_CAP_NESTED_STATE
[linux.git] / arch / x86 / include / asm / kvm_host.h
index c13cd28d9d1be5abdff8fdf93692d51755c8930c..bd287b348751a498e304d9448d7ba6bbdb049822 100644 (file)
@@ -75,6 +75,7 @@
 #define KVM_REQ_HV_EXIT                        KVM_ARCH_REQ(21)
 #define KVM_REQ_HV_STIMER              KVM_ARCH_REQ(22)
 #define KVM_REQ_LOAD_EOI_EXITMAP       KVM_ARCH_REQ(23)
+#define KVM_REQ_GET_VMCS12_PAGES       KVM_ARCH_REQ(24)
 
 #define CR0_RESERVED_BITS                                               \
        (~(unsigned long)(X86_CR0_PE | X86_CR0_MP | X86_CR0_EM | X86_CR0_TS \
@@ -1085,6 +1086,14 @@ struct kvm_x86_ops {
 
        void (*setup_mce)(struct kvm_vcpu *vcpu);
 
+       int (*get_nested_state)(struct kvm_vcpu *vcpu,
+                               struct kvm_nested_state __user *user_kvm_nested_state,
+                               unsigned user_data_size);
+       int (*set_nested_state)(struct kvm_vcpu *vcpu,
+                               struct kvm_nested_state __user *user_kvm_nested_state,
+                               struct kvm_nested_state *kvm_state);
+       void (*get_vmcs12_pages)(struct kvm_vcpu *vcpu);
+
        int (*smi_allowed)(struct kvm_vcpu *vcpu);
        int (*pre_enter_smm)(struct kvm_vcpu *vcpu, char *smstate);
        int (*pre_leave_smm)(struct kvm_vcpu *vcpu, u64 smbase);