Lines Matching refs:vmcb02

520 	if (!svm->nested.vmcb02.ptr)  in nested_vmcb02_compute_g_pat()
524 svm->nested.vmcb02.ptr->save.g_pat = svm->vmcb01.ptr->save.g_pat; in nested_vmcb02_compute_g_pat()
531 struct vmcb *vmcb02 = svm->nested.vmcb02.ptr; in nested_vmcb02_prepare_save() local
543 vmcb02->save.es = vmcb12->save.es; in nested_vmcb02_prepare_save()
544 vmcb02->save.cs = vmcb12->save.cs; in nested_vmcb02_prepare_save()
545 vmcb02->save.ss = vmcb12->save.ss; in nested_vmcb02_prepare_save()
546 vmcb02->save.ds = vmcb12->save.ds; in nested_vmcb02_prepare_save()
547 vmcb02->save.cpl = vmcb12->save.cpl; in nested_vmcb02_prepare_save()
548 vmcb_mark_dirty(vmcb02, VMCB_SEG); in nested_vmcb02_prepare_save()
552 vmcb02->save.gdtr = vmcb12->save.gdtr; in nested_vmcb02_prepare_save()
553 vmcb02->save.idtr = vmcb12->save.idtr; in nested_vmcb02_prepare_save()
554 vmcb_mark_dirty(vmcb02, VMCB_DT); in nested_vmcb02_prepare_save()
571 vmcb02->save.rax = vmcb12->save.rax; in nested_vmcb02_prepare_save()
572 vmcb02->save.rsp = vmcb12->save.rsp; in nested_vmcb02_prepare_save()
573 vmcb02->save.rip = vmcb12->save.rip; in nested_vmcb02_prepare_save()
577 vmcb02->save.dr7 = svm->nested.save.dr7 | DR7_FIXED_1; in nested_vmcb02_prepare_save()
579 vmcb_mark_dirty(vmcb02, VMCB_DR); in nested_vmcb02_prepare_save()
587 svm_copy_lbrs(vmcb02, vmcb12); in nested_vmcb02_prepare_save()
588 vmcb02->save.dbgctl &= ~DEBUGCTL_RESERVED_BITS; in nested_vmcb02_prepare_save()
592 svm_copy_lbrs(vmcb02, vmcb01); in nested_vmcb02_prepare_save()
629 struct vmcb *vmcb02 = svm->nested.vmcb02.ptr; in nested_vmcb02_prepare_control() local
644 vmcb02->control.nested_ctl = vmcb01->control.nested_ctl; in nested_vmcb02_prepare_control()
645 vmcb02->control.iopm_base_pa = vmcb01->control.iopm_base_pa; in nested_vmcb02_prepare_control()
646 vmcb02->control.msrpm_base_pa = vmcb01->control.msrpm_base_pa; in nested_vmcb02_prepare_control()
651 vmcb02->control.tlb_ctl = TLB_CONTROL_DO_NOTHING; in nested_vmcb02_prepare_control()
662 vmcb02->control.tsc_offset = vcpu->arch.tsc_offset; in nested_vmcb02_prepare_control()
669 vmcb02->control.int_ctl = in nested_vmcb02_prepare_control()
673 vmcb02->control.int_vector = svm->nested.ctl.int_vector; in nested_vmcb02_prepare_control()
674 vmcb02->control.int_state = svm->nested.ctl.int_state; in nested_vmcb02_prepare_control()
675 vmcb02->control.event_inj = svm->nested.ctl.event_inj; in nested_vmcb02_prepare_control()
676 vmcb02->control.event_inj_err = svm->nested.ctl.event_inj_err; in nested_vmcb02_prepare_control()
687 vmcb02->control.next_rip = svm->nested.ctl.next_rip; in nested_vmcb02_prepare_control()
689 vmcb02->control.next_rip = vmcb12_rip; in nested_vmcb02_prepare_control()
691 svm->nmi_l1_to_l2 = is_evtinj_nmi(vmcb02->control.event_inj); in nested_vmcb02_prepare_control()
692 if (is_evtinj_soft(vmcb02->control.event_inj)) { in nested_vmcb02_prepare_control()
702 vmcb02->control.virt_ext = vmcb01->control.virt_ext & in nested_vmcb02_prepare_control()
705 vmcb02->control.virt_ext |= in nested_vmcb02_prepare_control()
709 vmcb02->control.virt_ext |= VIRTUAL_VMLOAD_VMSAVE_ENABLE_MASK; in nested_vmcb02_prepare_control()
715 vmcb02->control.pause_filter_count = pause_count12; in nested_vmcb02_prepare_control()
716 vmcb02->control.pause_filter_thresh = pause_thresh12; in nested_vmcb02_prepare_control()
720 vmcb02->control.pause_filter_count = vmcb01->control.pause_filter_count; in nested_vmcb02_prepare_control()
721 vmcb02->control.pause_filter_thresh = vmcb01->control.pause_filter_thresh; in nested_vmcb02_prepare_control()
726 vmcb02->control.pause_filter_count = 0; in nested_vmcb02_prepare_control()
728 vmcb02->control.pause_filter_thresh = 0; in nested_vmcb02_prepare_control()
782 WARN_ON(svm->vmcb == svm->nested.vmcb02.ptr); in enter_svm_guest_mode()
784 nested_svm_copy_common_state(svm->vmcb01.ptr, svm->nested.vmcb02.ptr); in enter_svm_guest_mode()
786 svm_switch_vmcb(svm, &svm->nested.vmcb02); in enter_svm_guest_mode()
933 struct vmcb *vmcb02 = svm->nested.vmcb02.ptr; in nested_svm_vmexit() local
959 vmcb12->save.es = vmcb02->save.es; in nested_svm_vmexit()
960 vmcb12->save.cs = vmcb02->save.cs; in nested_svm_vmexit()
961 vmcb12->save.ss = vmcb02->save.ss; in nested_svm_vmexit()
962 vmcb12->save.ds = vmcb02->save.ds; in nested_svm_vmexit()
963 vmcb12->save.gdtr = vmcb02->save.gdtr; in nested_svm_vmexit()
964 vmcb12->save.idtr = vmcb02->save.idtr; in nested_svm_vmexit()
968 vmcb12->save.cr2 = vmcb02->save.cr2; in nested_svm_vmexit()
974 vmcb12->save.dr7 = vmcb02->save.dr7; in nested_svm_vmexit()
976 vmcb12->save.cpl = vmcb02->save.cpl; in nested_svm_vmexit()
978 vmcb12->control.int_state = vmcb02->control.int_state; in nested_svm_vmexit()
979 vmcb12->control.exit_code = vmcb02->control.exit_code; in nested_svm_vmexit()
980 vmcb12->control.exit_code_hi = vmcb02->control.exit_code_hi; in nested_svm_vmexit()
981 vmcb12->control.exit_info_1 = vmcb02->control.exit_info_1; in nested_svm_vmexit()
982 vmcb12->control.exit_info_2 = vmcb02->control.exit_info_2; in nested_svm_vmexit()
988 vmcb12->control.next_rip = vmcb02->control.next_rip; in nested_svm_vmexit()
996 vmcb01->control.pause_filter_count = vmcb02->control.pause_filter_count; in nested_svm_vmexit()
1001 nested_svm_copy_common_state(svm->nested.vmcb02.ptr, svm->vmcb01.ptr); in nested_svm_vmexit()
1006 svm_copy_lbrs(vmcb12, vmcb02); in nested_svm_vmexit()
1009 svm_copy_lbrs(vmcb01, vmcb02); in nested_svm_vmexit()
1113 svm->nested.vmcb02.ptr = page_address(vmcb02_page); in svm_allocate_nested()
1114 svm->nested.vmcb02.pa = __sme_set(page_to_pfn(vmcb02_page) << PAGE_SHIFT); in svm_allocate_nested()
1140 __free_page(virt_to_page(svm->nested.vmcb02.ptr)); in svm_free_nested()
1141 svm->nested.vmcb02.ptr = NULL; in svm_free_nested()
1655 svm->nested.vmcb02.ptr->save = svm->vmcb01.ptr->save; in svm_set_nested_state()
1667 svm_switch_vmcb(svm, &svm->nested.vmcb02); in svm_set_nested_state()