Lines Matching refs:nested

221 	struct nested_state nested;  member
356 static int nested = true; variable
357 module_param(nested, int, S_IRUGO);
512 h = &svm->nested.hsave->control; in recalc_intercepts()
513 g = &svm->nested; in recalc_intercepts()
524 return svm->nested.hsave; in get_host_vmcb()
1049 msrpm = is_guest_mode(vcpu) ? to_svm(vcpu)->nested.msrpm: in msr_write_intercepted()
1339 if (nested) { in svm_hardware_setup()
1453 return svm->nested.hsave->control.tsc_offset; in svm_read_l1_tsc_offset()
1466 svm->nested.hsave->control.tsc_offset; in svm_write_l1_tsc_offset()
1467 svm->nested.hsave->control.tsc_offset = offset; in svm_write_l1_tsc_offset()
1612 svm->nested.vmcb = 0; in init_vmcb()
2199 svm->nested.hsave = page_address(hsave_page); in svm_create_vcpu()
2204 svm->nested.msrpm = page_address(nested_msrpm_pages); in svm_create_vcpu()
2205 svm_vcpu_init_msrpm(svm->nested.msrpm); in svm_create_vcpu()
2258 __free_page(virt_to_page(svm->nested.hsave)); in svm_free_vcpu()
2259 __free_pages(virt_to_page(svm->nested.msrpm), MSRPM_ALLOC_ORDER); in svm_free_vcpu()
2927 return svm->nested.nested_cr3; in nested_svm_get_tdp_cr3()
2933 u64 cr3 = svm->nested.nested_cr3; in nested_svm_get_tdp_pdptr()
3046 svm->nested.exit_required = true; in nested_svm_check_exception()
3067 if (svm->nested.exit_required) in nested_svm_intr()
3074 if (svm->nested.intercept & 1ULL) { in nested_svm_intr()
3081 svm->nested.exit_required = true; in nested_svm_intr()
3095 if (!(svm->nested.intercept & (1ULL << INTERCEPT_NMI))) in nested_svm_nmi()
3099 svm->nested.exit_required = true; in nested_svm_nmi()
3111 if (!(svm->nested.intercept & (1ULL << INTERCEPT_IOIO_PROT))) in nested_svm_intercept_ioio()
3117 gpa = svm->nested.vmcb_iopm + (port / 8); in nested_svm_intercept_ioio()
3134 if (!(svm->nested.intercept & (1ULL << INTERCEPT_MSR_PROT))) in nested_svm_exit_handled_msr()
3148 if (kvm_vcpu_read_guest(&svm->vcpu, svm->nested.vmcb_msrpm + offset, &value, 4)) in nested_svm_exit_handled_msr()
3222 if (svm->nested.intercept_cr & bit) in nested_svm_intercept()
3228 if (svm->nested.intercept_dr & bit) in nested_svm_intercept()
3234 if (svm->nested.intercept_exceptions & excp_bits) { in nested_svm_intercept()
3252 if (svm->nested.intercept & exit_bits) in nested_svm_intercept()
3308 struct vmcb *hsave = svm->nested.hsave; in nested_svm_vmexit()
3319 rc = kvm_vcpu_map(&svm->vcpu, gpa_to_gfn(svm->nested.vmcb), &map); in nested_svm_vmexit()
3330 svm->nested.vmcb = 0; in nested_svm_vmexit()
3402 svm->nested.nested_cr3 = 0; in nested_svm_vmexit()
3456 if (!(svm->nested.intercept & (1ULL << INTERCEPT_MSR_PROT))) in nested_svm_vmrun_msrpm()
3467 offset = svm->nested.vmcb_msrpm + (p * 4); in nested_svm_vmrun_msrpm()
3472 svm->nested.msrpm[p] = svm->msrpm[p] | value; in nested_svm_vmrun_msrpm()
3475 svm->vmcb->control.msrpm_base_pa = __sme_set(__pa(svm->nested.msrpm)); in nested_svm_vmrun_msrpm()
3504 svm->nested.nested_cr3 = nested_vmcb->control.nested_cr3; in enter_svm_guest_mode()
3541 svm->nested.vmcb_msrpm = nested_vmcb->control.msrpm_base_pa & ~0x0fffULL; in enter_svm_guest_mode()
3542 svm->nested.vmcb_iopm = nested_vmcb->control.iopm_base_pa & ~0x0fffULL; in enter_svm_guest_mode()
3545 svm->nested.intercept_cr = nested_vmcb->control.intercept_cr; in enter_svm_guest_mode()
3546 svm->nested.intercept_dr = nested_vmcb->control.intercept_dr; in enter_svm_guest_mode()
3547 svm->nested.intercept_exceptions = nested_vmcb->control.intercept_exceptions; in enter_svm_guest_mode()
3548 svm->nested.intercept = nested_vmcb->control.intercept; in enter_svm_guest_mode()
3591 svm->nested.vmcb = vmcb_gpa; in enter_svm_guest_mode()
3602 struct vmcb *hsave = svm->nested.hsave; in nested_svm_vmrun()
3964 intercept = svm->nested.intercept; in check_selective_cr0_intercepted()
4180 msr_info->data = svm->nested.hsave_msr; in svm_get_msr()
4183 msr_info->data = svm->nested.vm_cr_msr; in svm_get_msr()
4241 if (svm->nested.vm_cr_msr & SVM_VM_CR_SVM_DIS_MASK) in svm_set_vm_cr()
4244 svm->nested.vm_cr_msr &= ~chg_mask; in svm_set_vm_cr()
4245 svm->nested.vm_cr_msr |= (data & chg_mask); in svm_set_vm_cr()
4247 svm_dis = svm->nested.vm_cr_msr & SVM_VM_CR_SVM_DIS_MASK; in svm_set_vm_cr()
4381 svm->nested.hsave_msr = data; in svm_set_msr()
4943 if (unlikely(svm->nested.exit_required)) { in handle_exit()
4945 svm->nested.exit_required = false; in handle_exit()
5454 if (svm->nested.exit_required) in enable_nmi_window()
5611 if (unlikely(svm->nested.exit_required)) in svm_vcpu_run()
5915 if (nested) in svm_set_supported_cpuid()
6086 intercept = svm->nested.intercept; in svm_check_intercept()
6208 svm->nested.intercept & (1ULL << INTERCEPT_SMI)) { in svm_smi_allowed()
6211 svm->nested.exit_required = true; in svm_smi_allowed()
6227 put_smstate(u64, smstate, 0x7ee0, svm->nested.vmcb); in svm_pre_enter_smm()