Lines Matching refs:kvm_state

6106 	struct kvm_nested_state kvm_state = {
6109 .size = sizeof(kvm_state),
6119 return kvm_state.size + sizeof(*user_vmx_nested_state);
6126 kvm_state.hdr.vmx.vmxon_pa = vmx->nested.vmxon_ptr;
6127 kvm_state.hdr.vmx.vmcs12_pa = vmx->nested.current_vmptr;
6130 kvm_state.size += sizeof(user_vmx_nested_state->vmcs12);
6133 kvm_state.flags |= KVM_STATE_NESTED_EVMCS;
6138 kvm_state.size += sizeof(user_vmx_nested_state->shadow_vmcs12);
6142 kvm_state.hdr.vmx.smm.flags |= KVM_STATE_NESTED_SMM_VMXON;
6145 kvm_state.hdr.vmx.smm.flags |= KVM_STATE_NESTED_SMM_GUEST_MODE;
6148 kvm_state.flags |= KVM_STATE_NESTED_GUEST_MODE;
6151 kvm_state.flags |= KVM_STATE_NESTED_RUN_PENDING;
6154 kvm_state.flags |= KVM_STATE_NESTED_MTF_PENDING;
6158 kvm_state.hdr.vmx.flags |=
6160 kvm_state.hdr.vmx.preemption_timer_deadline =
6166 if (user_data_size < kvm_state.size)
6169 if (copy_to_user(user_kvm_nested_state, &kvm_state, sizeof(kvm_state)))
6212 return kvm_state.size;
6229 struct kvm_nested_state *kvm_state)
6238 if (kvm_state->format != KVM_STATE_NESTED_FORMAT_VMX)
6241 if (kvm_state->hdr.vmx.vmxon_pa == -1ull) {
6242 if (kvm_state->hdr.vmx.smm.flags)
6245 if (kvm_state->hdr.vmx.vmcs12_pa != -1ull)
6257 if (kvm_state->flags & ~KVM_STATE_NESTED_EVMCS)
6263 if (!page_address_valid(vcpu, kvm_state->hdr.vmx.vmxon_pa))
6267 if ((kvm_state->hdr.vmx.smm.flags & KVM_STATE_NESTED_SMM_GUEST_MODE) &&
6268 (kvm_state->flags & KVM_STATE_NESTED_GUEST_MODE))
6271 if (kvm_state->hdr.vmx.smm.flags &
6275 if (kvm_state->hdr.vmx.flags & ~KVM_STATE_VMX_PREEMPTION_TIMER_DEADLINE)
6284 (kvm_state->flags &
6286 : kvm_state->hdr.vmx.smm.flags)
6289 if ((kvm_state->hdr.vmx.smm.flags & KVM_STATE_NESTED_SMM_GUEST_MODE) &&
6290 !(kvm_state->hdr.vmx.smm.flags & KVM_STATE_NESTED_SMM_VMXON))
6293 if ((kvm_state->flags & KVM_STATE_NESTED_EVMCS) &&
6299 if (kvm_state->hdr.vmx.vmxon_pa == -1ull)
6302 vmx->nested.vmxon_ptr = kvm_state->hdr.vmx.vmxon_pa;
6308 if (kvm_state->size < sizeof(*kvm_state) + sizeof(*vmcs12)) {
6310 if ((kvm_state->flags & KVM_STATE_NESTED_GUEST_MODE) ||
6311 (kvm_state->flags & KVM_STATE_NESTED_EVMCS) ||
6312 (kvm_state->hdr.vmx.vmcs12_pa != -1ull))
6318 if (kvm_state->hdr.vmx.vmcs12_pa != -1ull) {
6319 if (kvm_state->hdr.vmx.vmcs12_pa == kvm_state->hdr.vmx.vmxon_pa ||
6320 !page_address_valid(vcpu, kvm_state->hdr.vmx.vmcs12_pa))
6323 set_current_vmptr(vmx, kvm_state->hdr.vmx.vmcs12_pa);
6324 } else if (kvm_state->flags & KVM_STATE_NESTED_EVMCS) {
6336 if (kvm_state->hdr.vmx.smm.flags & KVM_STATE_NESTED_SMM_VMXON) {
6340 if (kvm_state->hdr.vmx.smm.flags & KVM_STATE_NESTED_SMM_GUEST_MODE)
6351 if (!(kvm_state->flags & KVM_STATE_NESTED_GUEST_MODE))
6355 !!(kvm_state->flags & KVM_STATE_NESTED_RUN_PENDING);
6358 !!(kvm_state->flags & KVM_STATE_NESTED_MTF_PENDING);
6365 if (kvm_state->size <
6366 sizeof(*kvm_state) +
6383 if (kvm_state->hdr.vmx.flags & KVM_STATE_VMX_PREEMPTION_TIMER_DEADLINE) {
6386 kvm_state->hdr.vmx.preemption_timer_deadline;