Lines Matching refs:nested

227 	struct nested_state nested;  member
360 static int nested = true; variable
361 module_param(nested, int, S_IRUGO);
509 h = &svm->nested.hsave->control; in recalc_intercepts()
510 g = &svm->nested; in recalc_intercepts()
521 return svm->nested.hsave; in get_host_vmcb()
1043 msrpm = is_guest_mode(vcpu) ? to_svm(vcpu)->nested.msrpm: in msr_write_intercepted()
1333 if (nested) { in svm_hardware_setup()
1442 return svm->nested.hsave->control.tsc_offset; in svm_read_l1_tsc_offset()
1455 svm->nested.hsave->control.tsc_offset; in svm_write_tsc_offset()
1456 svm->nested.hsave->control.tsc_offset = offset; in svm_write_tsc_offset()
1598 svm->nested.vmcb = 0; in init_vmcb()
2156 svm->nested.hsave = page_address(hsave_page); in svm_create_vcpu()
2161 svm->nested.msrpm = page_address(nested_msrpm_pages); in svm_create_vcpu()
2162 svm_vcpu_init_msrpm(svm->nested.msrpm); in svm_create_vcpu()
2196 __free_page(virt_to_page(svm->nested.hsave)); in svm_free_vcpu()
2197 __free_pages(virt_to_page(svm->nested.msrpm), MSRPM_ALLOC_ORDER); in svm_free_vcpu()
2866 return svm->nested.nested_cr3; in nested_svm_get_tdp_cr3()
2872 u64 cr3 = svm->nested.nested_cr3; in nested_svm_get_tdp_pdptr()
2985 svm->nested.exit_required = true; in nested_svm_check_exception()
3006 if (svm->nested.exit_required) in nested_svm_intr()
3013 if (svm->nested.intercept & 1ULL) { in nested_svm_intr()
3020 svm->nested.exit_required = true; in nested_svm_intr()
3034 if (!(svm->nested.intercept & (1ULL << INTERCEPT_NMI))) in nested_svm_nmi()
3038 svm->nested.exit_required = true; in nested_svm_nmi()
3076 if (!(svm->nested.intercept & (1ULL << INTERCEPT_IOIO_PROT))) in nested_svm_intercept_ioio()
3082 gpa = svm->nested.vmcb_iopm + (port / 8); in nested_svm_intercept_ioio()
3099 if (!(svm->nested.intercept & (1ULL << INTERCEPT_MSR_PROT))) in nested_svm_exit_handled_msr()
3113 if (kvm_vcpu_read_guest(&svm->vcpu, svm->nested.vmcb_msrpm + offset, &value, 4)) in nested_svm_exit_handled_msr()
3187 if (svm->nested.intercept_cr & bit) in nested_svm_intercept()
3193 if (svm->nested.intercept_dr & bit) in nested_svm_intercept()
3199 if (svm->nested.intercept_exceptions & excp_bits) { in nested_svm_intercept()
3217 if (svm->nested.intercept & exit_bits) in nested_svm_intercept()
3270 struct vmcb *hsave = svm->nested.hsave; in nested_svm_vmexit()
3281 nested_vmcb = nested_svm_map(svm, svm->nested.vmcb, &page); in nested_svm_vmexit()
3287 svm->nested.vmcb = 0; in nested_svm_vmexit()
3354 svm->nested.nested_cr3 = 0; in nested_svm_vmexit()
3400 if (!(svm->nested.intercept & (1ULL << INTERCEPT_MSR_PROT))) in nested_svm_vmrun_msrpm()
3411 offset = svm->nested.vmcb_msrpm + (p * 4); in nested_svm_vmrun_msrpm()
3416 svm->nested.msrpm[p] = svm->msrpm[p] | value; in nested_svm_vmrun_msrpm()
3419 svm->vmcb->control.msrpm_base_pa = __sme_set(__pa(svm->nested.msrpm)); in nested_svm_vmrun_msrpm()
3449 svm->nested.nested_cr3 = nested_vmcb->control.nested_cr3; in enter_svm_guest_mode()
3486 svm->nested.vmcb_msrpm = nested_vmcb->control.msrpm_base_pa & ~0x0fffULL; in enter_svm_guest_mode()
3487 svm->nested.vmcb_iopm = nested_vmcb->control.iopm_base_pa & ~0x0fffULL; in enter_svm_guest_mode()
3490 svm->nested.intercept_cr = nested_vmcb->control.intercept_cr; in enter_svm_guest_mode()
3491 svm->nested.intercept_dr = nested_vmcb->control.intercept_dr; in enter_svm_guest_mode()
3492 svm->nested.intercept_exceptions = nested_vmcb->control.intercept_exceptions; in enter_svm_guest_mode()
3493 svm->nested.intercept = nested_vmcb->control.intercept; in enter_svm_guest_mode()
3531 svm->nested.vmcb = vmcb_gpa; in enter_svm_guest_mode()
3541 struct vmcb *hsave = svm->nested.hsave; in nested_svm_vmrun()
3902 intercept = svm->nested.intercept; in check_selective_cr0_intercepted()
4118 msr_info->data = svm->nested.hsave_msr; in svm_get_msr()
4121 msr_info->data = svm->nested.vm_cr_msr; in svm_get_msr()
4197 if (svm->nested.vm_cr_msr & SVM_VM_CR_SVM_DIS_MASK) in svm_set_vm_cr()
4200 svm->nested.vm_cr_msr &= ~chg_mask; in svm_set_vm_cr()
4201 svm->nested.vm_cr_msr |= (data & chg_mask); in svm_set_vm_cr()
4203 svm_dis = svm->nested.vm_cr_msr & SVM_VM_CR_SVM_DIS_MASK; in svm_set_vm_cr()
4337 svm->nested.hsave_msr = data; in svm_set_msr()
4911 if (unlikely(svm->nested.exit_required)) { in handle_exit()
4913 svm->nested.exit_required = false; in handle_exit()
5408 if (svm->nested.exit_required) in enable_nmi_window()
5565 if (unlikely(svm->nested.exit_required)) in svm_vcpu_run()
5855 if (nested) in svm_set_supported_cpuid()
6015 intercept = svm->nested.intercept; in svm_check_intercept()
6144 svm->nested.intercept & (1ULL << INTERCEPT_SMI)) { in svm_smi_allowed()
6147 svm->nested.exit_required = true; in svm_smi_allowed()
6163 put_smstate(u64, smstate, 0x7ee0, svm->nested.vmcb); in svm_pre_enter_smm()