| /linux/arch/x86/kvm/svm/ |
| H A D | nested.c | 61 u64 cr3 = svm->nested.ctl.nested_cr3; in nested_svm_get_tdp_pdptr() 80 return svm->nested.ctl.nested_cr3; in nested_svm_get_tdp_cr3() 98 svm->nested.ctl.nested_cr3); in nested_svm_init_mmu_context() 119 if (!(svm->nested.ctl.virt_ext & VIRTUAL_VMLOAD_VMSAVE_ENABLE_MASK)) in nested_vmcb_needs_vls_intercept() 138 g = &svm->nested.ctl; in recalc_intercepts() 282 nsvm_msrpm_merge_t *msrpm02 = svm->nested.msrpm; in nested_svm_merge_msrpm() 295 if (!svm->nested.force_msr_bitmap_recalc) { in nested_svm_merge_msrpm() 296 struct hv_vmcb_enlightenments *hve = &svm->nested.ctl.hv_enlightenments; in nested_svm_merge_msrpm() 300 (svm->nested.ctl.clean & BIT(HV_VMCB_NESTED_ENLIGHTENMENTS))) in nested_svm_merge_msrpm() 305 if (!(vmcb12_is_intercept(&svm->nested.ctl, INTERCEPT_MSR_PROT))) in nested_svm_merge_msrpm() [all …]
|
| H A D | hyperv.h | 18 struct hv_vmcb_enlightenments *hve = &svm->nested.ctl.hv_enlightenments; in nested_svm_hv_update_vm_vp_ids() 24 hv_vcpu->nested.pa_page_gpa = hve->partition_assist_page; in nested_svm_hv_update_vm_vp_ids() 25 hv_vcpu->nested.vm_id = hve->hv_vm_id; in nested_svm_hv_update_vm_vp_ids() 26 hv_vcpu->nested.vp_id = hve->hv_vp_id; in nested_svm_hv_update_vm_vp_ids() 32 struct hv_vmcb_enlightenments *hve = &svm->nested.ctl.hv_enlightenments; in nested_svm_l2_tlb_flush_enabled()
|
| H A D | svm.h | 281 struct svm_nested_state nested; member 535 (svm->nested.ctl.int_ctl & V_GIF_ENABLE_MASK); in nested_vgif_enabled() 544 return svm->nested.vmcb02.ptr; in get_vgif_vmcb() 581 return svm->nested.ctl.nested_ctl & SVM_NESTED_CTL_NP_ENABLE; in nested_npt_enabled() 587 (svm->nested.ctl.int_ctl & V_NMI_ENABLE_MASK); in nested_vnmi_enabled() 759 return is_guest_mode(vcpu) && (svm->nested.ctl.int_ctl & V_INTR_MASKING_MASK); in nested_svm_virtualize_tpr() 764 return vmcb12_is_intercept(&svm->nested.ctl, INTERCEPT_SMI); in nested_exit_on_smi() 769 return vmcb12_is_intercept(&svm->nested.ctl, INTERCEPT_INTR); in nested_exit_on_intr() 774 return vmcb12_is_intercept(&svm->nested.ctl, INTERCEPT_NMI); in nested_exit_on_nmi()
|
| /linux/tools/testing/selftests/verification/test.d/ |
| H A D | rv_monitor_enable_disable.tc | 24 local nested 31 nested=$(basename "$nested_dir") 32 grep -q "^$monitor:$nested$" enabled_monitors 34 test -n "$nested" 41 nested=$(basename "$nested_dir") 42 ! grep -q "^$monitor:$nested$" enabled_monitors 50 nested=$(basename "$nested_dir") 51 grep -q "^$monitor:$nested$" enabled_monitors 59 nested=$(basename "$nested_dir") 60 test_simple_monitor "$nested" "$monitor/"
|
| H A D | rv_monitor_reactor.tc | 23 local nested 33 nested=$(basename "$nested_dir") 34 grep -q "\\[$reactor\\]" "monitors/$monitor/$nested/reactors" 37 test -n "$nested" 44 nested=$(basename "$nested_dir") 45 grep -q "\\[nop\\]" "monitors/$monitor/$nested/reactors" 50 nested=$(basename "$nested_dir") 51 test_monitor_reactor "$nested" "$monitor/"
|
| H A D | rv_monitors_available.tc | 13 nested=$(basename "$nested_dir") 15 grep -q "^$monitor:$nested$" available_monitors
|
| /linux/Documentation/virt/kvm/x86/ |
| H A D | running-nested-guests.rst | 4 Running nested guests with KVM 7 A nested guest is the ability to run a guest inside another guest (it 36 - L2 – level-2 guest; a VM running on L1, this is the "nested guest" 44 resulting in at least four levels in a nested setup — L0 (bare 46 (guest hypervisor), L3 (nested guest). 56 There are several scenarios where nested KVM can be useful, to name a 61 Provider, using nested KVM lets you rent a large enough "guest 63 multiple nested guests (level-2 guests), running different OSes, on 66 - Live migration of "guest hypervisors" and their nested guests, for 76 Enabling "nested" (x86) [all …]
|
| H A D | index.rst | 17 nested-vmx 18 running-nested-guests
|
| H A D | nested-vmx.rst | 16 hypervisors (which use VMX) with their own nested guests. It does so by 20 We describe in much greater detail the theory behind the nested VMX feature, 32 In nested virtualization, we have three levels: The host (KVM), which we call 33 L0, the guest hypervisor, which we call L1, and its nested guest, which we 37 Running nested VMX 40 The nested VMX feature is enabled by default since Linux kernel v4.20. For 41 older Linux kernel, it can be enabled by giving the "nested=1" option to the 65 As a VMX implementation, nested VMX presents a VMCS structure to L1.
|
| /linux/arch/x86/kvm/vmx/ |
| H A D | nested.c | 189 to_vmx(vcpu)->nested.need_vmcs12_to_shadow_sync = true; in nested_vmx_failValid() 202 if (vmx->nested.current_vmptr == INVALID_GPA && in nested_vmx_fail() 230 vmx->nested.need_vmcs12_to_shadow_sync = false; in vmx_disable_shadow_vmcs() 239 kvm_vcpu_unmap(vcpu, &vmx->nested.hv_evmcs_map); in nested_release_evmcs() 240 vmx->nested.hv_evmcs = NULL; in nested_release_evmcs() 241 vmx->nested.hv_evmcs_vmptr = EVMPTR_INVALID; in nested_release_evmcs() 244 hv_vcpu->nested.pa_page_gpa = INVALID_GPA; in nested_release_evmcs() 245 hv_vcpu->nested.vm_id = 0; in nested_release_evmcs() 246 hv_vcpu->nested.vp_id = 0; in nested_release_evmcs() 269 if (nested_vmx_evmcs(vmx) && vmptr == vmx->nested.hv_evmcs_vmptr) in nested_evmcs_handle_vmclear() [all …]
|
| H A D | vmx.c | 126 static bool __read_mostly nested = 1; variable 127 module_param(nested, bool, 0444); 1378 if (vmx->nested.need_vmcs12_to_shadow_sync) in vmx_prepare_switch_to_guest() 1624 WARN_ON_ONCE(vmx->loaded_vmcs != &vmx->nested.vmcs02); in vmx_load_vmcs01() 1633 vmx_switch_loaded_vmcs(vcpu, &to_vmx(vcpu)->nested.vmcs02); in vmx_put_vmcs01() 1912 vmx->nested.mtf_pending = true; in vmx_update_emulated_instruction() 1915 vmx->nested.mtf_pending = false; in vmx_update_emulated_instruction() 2111 if (!nested) in vmx_get_feature_msr() 2113 return vmx_get_vmx_msr(&vmcs_config.nested, msr, data); in vmx_get_feature_msr() 2198 if (vmx_get_vmx_msr(&vmx->nested.msrs, msr_info->index, in vmx_get_msr() [all …]
|
| /linux/rust/macros/ |
| H A D | zeroable.rs | |
| /linux/rust/pin-init/internal/src/ |
| H A D | zeroable.rs | 34 let mut nested = 0; parse_zeroable_derive_input() localVariable
|
| /linux/tools/perf/bench/ |
| H A D | epoll-ctl.c | 57 static unsigned int nested = 0; variable 79 …OPT_UINTEGER( 'N', "nested", &nested, "Nesting level epoll hierarchy (default is 0, no nesting)… 105 if (nested > EPOLL_MAXNESTS) in nest_epollfd() 106 nested = EPOLL_MAXNESTS; in nest_epollfd() 107 printinfo("Nesting level(s): %d\n", nested); in nest_epollfd() 109 epollfdp = calloc(nested, sizeof(int)); in nest_epollfd() 113 for (i = 0; i < nested; i++) { in nest_epollfd() 122 for (i = nested - 1; i; i--) { in nest_epollfd() 345 if (nested) in bench_epoll_ctl()
|
| /linux/net/netfilter/ipset/ |
| H A D | ip_set_bitmap_gen.h | 95 struct nlattr *nested; in mtype_head() local 98 nested = nla_nest_start(skb, IPSET_ATTR_DATA); in mtype_head() 99 if (!nested) in mtype_head() 108 nla_nest_end(skb, nested); in mtype_head() 207 struct nlattr *adt, *nested; in mtype_list() local 229 nested = nla_nest_start(skb, IPSET_ATTR_DATA); in mtype_list() 230 if (!nested) { in mtype_list() 243 nla_nest_end(skb, nested); in mtype_list() 253 nla_nest_cancel(skb, nested); in mtype_list()
|
| H A D | ip_set_list_set.c | 457 struct nlattr *nested; in list_set_head() local 460 nested = nla_nest_start(skb, IPSET_ATTR_DATA); in list_set_head() 461 if (!nested) in list_set_head() 470 nla_nest_end(skb, nested); in list_set_head() 482 struct nlattr *atd, *nested; in list_set_list() local 500 nested = nla_nest_start(skb, IPSET_ATTR_DATA); in list_set_list() 501 if (!nested) in list_set_list() 508 nla_nest_end(skb, nested); in list_set_list() 518 nla_nest_cancel(skb, nested); in list_set_list()
|
| /linux/arch/riscv/kernel/ |
| H A D | kernel_mode_vector.c | 190 #define riscv_v_start_kernel_context(nested) (-ENOENT) argument 209 bool nested = false; in kernel_vector_begin() local 216 if (riscv_v_start_kernel_context(&nested)) { in kernel_vector_begin() 221 if (!nested) in kernel_vector_begin()
|
| /linux/arch/arm64/kvm/ |
| H A D | mmu.c | 1546 static void adjust_nested_fault_perms(struct kvm_s2_trans *nested, in adjust_nested_fault_perms() argument 1550 *writable &= kvm_s2_trans_writable(nested); in adjust_nested_fault_perms() 1551 if (!kvm_s2_trans_readable(nested)) in adjust_nested_fault_perms() 1554 *prot |= kvm_encode_nested_level(nested); in adjust_nested_fault_perms() 1558 struct kvm_s2_trans *nested, in adjust_nested_exec_perms() argument 1561 if (!kvm_s2_trans_exec_el0(kvm, nested)) in adjust_nested_exec_perms() 1563 if (!kvm_s2_trans_exec_el1(kvm, nested)) in adjust_nested_exec_perms() 1568 struct kvm_s2_trans *nested, in gmem_abort() argument 1587 if (nested) in gmem_abort() 1588 gfn = kvm_s2_trans_output(nested) >> PAGE_SHIFT; in gmem_abort() [all …]
|
| H A D | Makefile | 20 arch_timer.o trng.o vmid.o emulate-nested.o nested.o at.o \ 26 vgic/vgic-its.o vgic/vgic-debug.o vgic/vgic-v3-nested.o \
|
| /linux/scripts/coccinelle/locks/ |
| H A D | flags.cocci | 2 /// Find nested lock+irqsave functions that use the same flags variables 73 cocci.print_secs("nested lock+irqsave that reuses flags",p2) 80 msg="ERROR: nested lock+irqsave that reuses flags from line %s." % (p1[0].line)
|
| /linux/Documentation/tools/rv/ |
| H A D | rv-mon-sched.rst | 28 As a monitor container, it will enable all nested monitors and set them 30 Nevertheless nested monitors can also be activated independently both by name 48 The available nested monitors are:
|
| /linux/arch/powerpc/kvm/ |
| H A D | book3s_hv_p9_entry.c | 137 if (!vcpu->arch.nested) { in store_vcpu_state() 201 if (!vcpu->arch.nested) { in restore_p9_host_os_sprs() 303 struct kvm_nested_guest *nested = vcpu->arch.nested; in switch_mmu_to_guest_radix() local 307 lpid = nested ? nested->shadow_lpid : kvm->arch.lpid; in switch_mmu_to_guest_radix() 454 struct kvm_nested_guest *nested) in check_need_tlb_flush() argument 460 if (nested) in check_need_tlb_flush() 461 need_tlb_flush = &nested->need_tlb_flush; in check_need_tlb_flush() 536 struct kvm_nested_guest *nested = vcpu->arch.nested; in kvmhv_vcpu_entry_p9() local 703 check_need_tlb_flush(kvm, vc->pcpu, nested); in kvmhv_vcpu_entry_p9()
|
| H A D | book3s_64_mmu_radix.c | 110 if (vcpu->arch.nested) in kvmhv_copy_tofrom_guest_radix() 111 lpid = vcpu->arch.nested->shadow_lpid; in kvmhv_copy_tofrom_guest_radix() 793 bool kvmppc_hv_handle_set_rc(struct kvm *kvm, bool nested, bool writing, in kvmppc_hv_handle_set_rc() argument 809 if (nested) in kvmppc_hv_handle_set_rc() 1289 struct kvm_nested_guest *nested; in debugfs_radix_read() local 1325 nested = NULL; in debugfs_radix_read() 1331 if (nested) { in debugfs_radix_read() 1332 kvmhv_put_nested(nested); in debugfs_radix_read() 1333 nested = NULL; in debugfs_radix_read() 1344 nested = kvmhv_get_nested(kvm, p->lpid, false); in debugfs_radix_read() [all …]
|
| /linux/Documentation/arch/x86/ |
| H A D | kernel-stacks.rst | 28 hardware interrupt (i.e. not a nested hardware interrupt) then the 54 nested IST interrupts then the handler must adjust the IST values on 59 nested. For example, a debug interrupt can safely be interrupted by an 62 IST events with the same code to be nested. However in most cases, the 95 To handle nested #DB correctly there exist two instances of DB stacks. On 97 so a nested #DB starts from a clean stack. The nested #DB switches
|
| /linux/tools/net/ynl/pyynl/ |
| H A D | ynl_gen_c.py | 7 # pylint: disable=too-many-nested-blocks, too-many-lines, too-few-public-methods 77 if 'nested-attributes' in attr: 78 nested = attr['nested-attributes'] 80 nested = attr['sub-message'] 82 nested = None 84 if nested: 85 self.nested_attrs = nested 989 self.nested = type_list is None 995 if self.nested an [all...] |