Lines Matching refs:hsave

95 	struct vmcb *hsave = svm->nested.hsave;  in nested_svm_init_mmu_context()  local
100 kvm_init_shadow_npt_mmu(vcpu, X86_CR0_PG, hsave->save.cr4, hsave->save.efer, in nested_svm_init_mmu_context()
126 h = &svm->nested.hsave->control; in recalc_intercepts()
448 (svm->nested.hsave->control.int_ctl & int_ctl_vmcb01_bits); in nested_prepare_vmcb_control()
496 struct vmcb *hsave = svm->nested.hsave; in nested_svm_vmrun() local
554 hsave->save.es = vmcb->save.es; in nested_svm_vmrun()
555 hsave->save.cs = vmcb->save.cs; in nested_svm_vmrun()
556 hsave->save.ss = vmcb->save.ss; in nested_svm_vmrun()
557 hsave->save.ds = vmcb->save.ds; in nested_svm_vmrun()
558 hsave->save.gdtr = vmcb->save.gdtr; in nested_svm_vmrun()
559 hsave->save.idtr = vmcb->save.idtr; in nested_svm_vmrun()
560 hsave->save.efer = svm->vcpu.arch.efer; in nested_svm_vmrun()
561 hsave->save.cr0 = kvm_read_cr0(&svm->vcpu); in nested_svm_vmrun()
562 hsave->save.cr4 = svm->vcpu.arch.cr4; in nested_svm_vmrun()
563 hsave->save.rflags = kvm_get_rflags(&svm->vcpu); in nested_svm_vmrun()
564 hsave->save.rip = kvm_rip_read(&svm->vcpu); in nested_svm_vmrun()
565 hsave->save.rsp = vmcb->save.rsp; in nested_svm_vmrun()
566 hsave->save.rax = vmcb->save.rax; in nested_svm_vmrun()
568 hsave->save.cr3 = vmcb->save.cr3; in nested_svm_vmrun()
570 hsave->save.cr3 = kvm_read_cr3(&svm->vcpu); in nested_svm_vmrun()
572 copy_vmcb_control_area(&hsave->control, &vmcb->control); in nested_svm_vmrun()
618 struct vmcb *hsave = svm->nested.hsave; in nested_svm_vmexit() local
685 copy_vmcb_control_area(&vmcb->control, &hsave->control); in nested_svm_vmexit()
696 svm->vmcb->save.es = hsave->save.es; in nested_svm_vmexit()
697 svm->vmcb->save.cs = hsave->save.cs; in nested_svm_vmexit()
698 svm->vmcb->save.ss = hsave->save.ss; in nested_svm_vmexit()
699 svm->vmcb->save.ds = hsave->save.ds; in nested_svm_vmexit()
700 svm->vmcb->save.gdtr = hsave->save.gdtr; in nested_svm_vmexit()
701 svm->vmcb->save.idtr = hsave->save.idtr; in nested_svm_vmexit()
702 kvm_set_rflags(&svm->vcpu, hsave->save.rflags); in nested_svm_vmexit()
703 svm_set_efer(&svm->vcpu, hsave->save.efer); in nested_svm_vmexit()
704 svm_set_cr0(&svm->vcpu, hsave->save.cr0 | X86_CR0_PE); in nested_svm_vmexit()
705 svm_set_cr4(&svm->vcpu, hsave->save.cr4); in nested_svm_vmexit()
706 kvm_rax_write(&svm->vcpu, hsave->save.rax); in nested_svm_vmexit()
707 kvm_rsp_write(&svm->vcpu, hsave->save.rsp); in nested_svm_vmexit()
708 kvm_rip_write(&svm->vcpu, hsave->save.rip); in nested_svm_vmexit()
726 rc = nested_svm_load_cr3(&svm->vcpu, hsave->save.cr3, false); in nested_svm_vmexit()
731 svm->vmcb->save.cr3 = hsave->save.cr3; in nested_svm_vmexit()
754 svm->nested.hsave = page_address(hsave_page); in svm_allocate_nested()
777 __free_page(virt_to_page(svm->nested.hsave)); in svm_free_nested()
778 svm->nested.hsave = NULL; in svm_free_nested()
791 struct vmcb *hsave = svm->nested.hsave; in svm_leave_nested() local
796 copy_vmcb_control_area(&vmcb->control, &hsave->control); in svm_leave_nested()
1143 if (copy_to_user(&user_vmcb->save, &svm->nested.hsave->save, in svm_get_nested_state()
1156 struct vmcb *hsave = svm->nested.hsave; in svm_set_nested_state() local
1240 copy_vmcb_control_area(&hsave->control, &svm->vmcb->control); in svm_set_nested_state()
1241 hsave->save = *save; in svm_set_nested_state()