/kernel/linux/linux-5.10/arch/x86/kvm/vmx/ |
D | nested.h | 42 return to_vmx(vcpu)->nested.cached_vmcs12; in get_vmcs12() 47 return to_vmx(vcpu)->nested.cached_shadow_vmcs12; in get_shadow_vmcs12() 65 return is_guest_mode(vcpu) || vmx->nested.current_vmptr != -1ull || in vmx_has_valid_vmcs12() 66 vmx->nested.hv_evmcs; in vmx_has_valid_vmcs12() 73 return vmx->nested.vpid02 ? vmx->nested.vpid02 : vmx->vpid; in nested_get_vpid02() 105 return vmx_misc_cr3_count(to_vmx(vcpu)->nested.msrs.misc_low); in nested_cpu_vmx_misc_cr3_count() 115 return to_vmx(vcpu)->nested.msrs.misc_low & in nested_cpu_has_vmwrite_any_field() 121 return to_vmx(vcpu)->nested.msrs.misc_low & VMX_MISC_ZERO_LEN_INS; in nested_cpu_has_zero_length_injection() 126 return to_vmx(vcpu)->nested.msrs.procbased_ctls_high & in nested_cpu_supports_monitor_trap_flag() 132 return to_vmx(vcpu)->nested.msrs.secondary_ctls_high & in nested_cpu_has_vmx_shadow_vmcs() [all …]
|
D | nested.c | 195 if (vmx->nested.current_vmptr == -1ull && !vmx->nested.hv_evmcs) in nested_vmx_fail() 222 vmx->nested.need_vmcs12_to_shadow_sync = false; in vmx_disable_shadow_vmcs() 229 if (!vmx->nested.hv_evmcs) in nested_release_evmcs() 232 kvm_vcpu_unmap(vcpu, &vmx->nested.hv_evmcs_map, true); in nested_release_evmcs() 233 vmx->nested.hv_evmcs_vmptr = 0; in nested_release_evmcs() 234 vmx->nested.hv_evmcs = NULL; in nested_release_evmcs() 286 if (!vmx->nested.vmxon && !vmx->nested.smm.vmxon) in free_nested() 291 vmx->nested.vmxon = false; in free_nested() 292 vmx->nested.smm.vmxon = false; in free_nested() 293 free_vpid(vmx->nested.vpid02); in free_nested() [all …]
|
D | vmx.c | 111 static bool __read_mostly nested = 1; variable 112 module_param(nested, bool, S_IRUGO); 1299 if (vmx->nested.need_vmcs12_to_shadow_sync) in vmx_prepare_switch_to_guest() 1711 vmx->nested.mtf_pending = true; in vmx_update_emulated_instruction() 1713 vmx->nested.mtf_pending = false; in vmx_update_emulated_instruction() 1859 return nested && guest_cpuid_has(vcpu, X86_FEATURE_VMX); in nested_vmx_allowed() 1874 if (!nested) in vmx_get_msr_feature() 1876 return vmx_get_vmx_msr(&vmcs_config.nested, msr->index, &msr->data); in vmx_get_msr_feature() 1957 if (vmx_get_vmx_msr(&vmx->nested.msrs, msr_info->index, in vmx_get_msr() 1968 vmx->nested.enlightened_vmcs_enabled) in vmx_get_msr() [all …]
|
/kernel/linux/linux-5.10/arch/x86/kvm/svm/ |
D | nested.c | 59 if (vmcb_is_intercept(&svm->nested.ctl, INTERCEPT_EXCEPTION_OFFSET + PF_VECTOR) && in svm_inject_page_fault_nested() 60 !svm->nested.nested_run_pending) { in svm_inject_page_fault_nested() 74 u64 cr3 = svm->nested.ctl.nested_cr3; in nested_svm_get_tdp_pdptr() 89 return svm->nested.ctl.nested_cr3; in nested_svm_get_tdp_cr3() 95 struct vmcb *hsave = svm->nested.hsave; in nested_svm_init_mmu_context() 101 svm->nested.ctl.nested_cr3); in nested_svm_init_mmu_context() 126 h = &svm->nested.hsave->control; in recalc_intercepts() 127 g = &svm->nested.ctl; in recalc_intercepts() 195 if (!(vmcb_is_intercept(&svm->nested.ctl, INTERCEPT_MSR_PROT))) in nested_svm_vmrun_msrpm() 206 offset = svm->nested.ctl.msrpm_base_pa + (p * 4); in nested_svm_vmrun_msrpm() [all …]
|
D | svm.h | 138 struct svm_nested_state nested; member 220 return svm->nested.hsave; in get_host_vmcb() 376 return is_guest_mode(vcpu) && (svm->nested.ctl.int_ctl & V_INTR_MASKING_MASK); in nested_svm_virtualize_tpr() 381 return vmcb_is_intercept(&svm->nested.ctl, INTERCEPT_SMI); in nested_exit_on_smi() 386 return vmcb_is_intercept(&svm->nested.ctl, INTERCEPT_INTR); in nested_exit_on_intr() 391 return vmcb_is_intercept(&svm->nested.ctl, INTERCEPT_NMI); in nested_exit_on_nmi()
|
D | svm.c | 174 static int nested = true; variable 175 module_param(nested, int, S_IRUGO); 619 msrpm = is_guest_mode(vcpu) ? to_svm(vcpu)->nested.msrpm: in msr_write_intercepted() 897 if (nested) { in svm_set_cpu_caps() 956 if (nested) { in svm_hardware_setup() 1072 svm->nested.hsave->control.tsc_offset; in svm_write_l1_tsc_offset() 1073 svm->nested.hsave->control.tsc_offset = offset; in svm_write_l1_tsc_offset() 1219 svm->nested.vmcb12_gpa = 0; in init_vmcb() 1491 svm->nested.hsave->control.int_ctl &= ~V_IRQ_INJECTION_BITS_MASK; in svm_clear_vintr() 1494 (svm->nested.ctl.int_ctl & V_TPR_MASK)); in svm_clear_vintr() [all …]
|
/kernel/linux/linux-5.10/Documentation/virt/kvm/ |
D | running-nested-guests.rst | 2 Running nested guests with KVM 5 A nested guest is the ability to run a guest inside another guest (it 34 - L2 – level-2 guest; a VM running on L1, this is the "nested guest" 42 resulting in at least four levels in a nested setup — L0 (bare 44 (guest hypervisor), L3 (nested guest). 54 There are several scenarios where nested KVM can be useful, to name a 59 Provider, using nested KVM lets you rent a large enough "guest 61 multiple nested guests (level-2 guests), running different OSes, on 64 - Live migration of "guest hypervisors" and their nested guests, for 74 Enabling "nested" (x86) [all …]
|
D | index.rst | 18 nested-vmx 32 running-nested-guests
|
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 disabled by default. It can be enabled by giving 41 the "nested=1" option to the kvm-intel module. 63 As a VMX implementation, nested VMX presents a VMCS structure to L1.
|
/kernel/linux/linux-5.10/Documentation/networking/ |
D | ethtool-netlink.rst | 48 Each request or reply message contains a nested attribute with common header. 84 type is used. For arbitrary length bitmaps, ethtool netlink uses a nested 104 Compact form: nested (bitset) atrribute contents: 129 Bit-by-bit form: nested (bitset) attribute contents: 136 | ``ETHTOOL_A_BITSET_BITS`` | nested | array of bits | 138 | | ``ETHTOOL_A_BITSET_BITS_BIT+`` | nested | one bit | 291 | ``ETHTOOL_A_STRSET_HEADER`` | nested | request header | 293 | ``ETHTOOL_A_STRSET_STRINGSETS`` | nested | string set to request | 295 | | ``ETHTOOL_A_STRINGSETS_STRINGSET+`` | nested | one string set | 303 | ``ETHTOOL_A_STRSET_HEADER`` | nested | reply header | [all …]
|
/kernel/linux/linux-5.10/tools/perf/bench/ |
D | epoll-wait.c | 105 static unsigned int nested = 0; variable 138 …OPT_UINTEGER( 'N', "nested", &nested, "Nesting level epoll hierarchy (default is 0, no nesting)… 246 if (nested > EPOLL_MAXNESTS) in nest_epollfd() 247 nested = EPOLL_MAXNESTS; in nest_epollfd() 249 epollfdp = calloc(nested, sizeof(*epollfdp)); in nest_epollfd() 253 for (i = 0; i < nested; i++) { in nest_epollfd() 262 for (i = nested - 1; i; i--) { in nest_epollfd() 318 if (nested) in do_threads() 447 if (nested) in bench_epoll_wait() 452 printinfo("Nesting level(s): %d\n", nested); in bench_epoll_wait()
|
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() 332 if (nested) in bench_epoll_ctl()
|
/kernel/linux/linux-5.10/net/netfilter/ipset/ |
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()
|
D | ip_set_list_set.c | 462 struct nlattr *nested; in list_set_head() local 465 nested = nla_nest_start(skb, IPSET_ATTR_DATA); in list_set_head() 466 if (!nested) in list_set_head() 475 nla_nest_end(skb, nested); in list_set_head() 487 struct nlattr *atd, *nested; in list_set_list() local 505 nested = nla_nest_start(skb, IPSET_ATTR_DATA); in list_set_list() 506 if (!nested) in list_set_list() 513 nla_nest_end(skb, nested); in list_set_list() 523 nla_nest_cancel(skb, nested); in list_set_list()
|
/kernel/linux/linux-5.10/scripts/coccinelle/locks/ |
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)
|
/kernel/linux/linux-5.10/arch/um/os-Linux/ |
D | signal.c | 170 int nested, bail; in hard_handler() local 186 nested = pending & 1; in hard_handler() 201 if (!nested) in hard_handler() 202 pending = from_irq_stack(nested); in hard_handler()
|
/kernel/linux/linux-5.10/arch/um/kernel/ |
D | irq.c | 542 int nested; in to_irq_stack() local 564 nested = (ti->real_thread != NULL); in to_irq_stack() 565 if (!nested) { in to_irq_stack() 578 *mask_out |= mask | nested; in to_irq_stack() 582 unsigned long from_irq_stack(int nested) in from_irq_stack() argument
|
/kernel/linux/linux-5.10/arch/powerpc/kvm/ |
D | book3s_64_mmu_radix.c | 98 if (vcpu->arch.nested) in kvmhv_copy_tofrom_guest_radix() 99 lpid = vcpu->arch.nested->shadow_lpid; in kvmhv_copy_tofrom_guest_radix() 764 bool kvmppc_hv_handle_set_rc(struct kvm *kvm, bool nested, bool writing, in kvmppc_hv_handle_set_rc() argument 780 if (nested) in kvmppc_hv_handle_set_rc() 1276 struct kvm_nested_guest *nested; in debugfs_radix_read() local 1312 nested = NULL; in debugfs_radix_read() 1318 if (nested) { in debugfs_radix_read() 1319 kvmhv_put_nested(nested); in debugfs_radix_read() 1320 nested = NULL; in debugfs_radix_read() 1331 nested = kvmhv_get_nested(kvm, p->lpid, false); in debugfs_radix_read() [all …]
|
/kernel/linux/linux-5.10/arch/x86/kvm/ |
D | Makefile | 22 vmx/evmcs.o vmx/nested.o vmx/posted_intr.o 23 kvm-amd-y += svm/svm.o svm/vmenter.o svm/pmu.o svm/nested.o svm/avic.o svm/sev.o
|
/kernel/linux/linux-5.10/Documentation/x86/ |
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
|
/kernel/linux/linux-5.10/Documentation/filesystems/ |
D | ceph.rst | 23 * Recursive accounting (nested files, directories, bytes) 56 a snapshot on any subdirectory (and its nested contents) in the 60 Ceph also provides some recursive accounting on directories for nested 62 system will reveal the total number of nested regular files and 63 subdirectories, and a summation of all nested file sizes. This makes 129 the summation of file sizes over all files nested beneath that
|
/kernel/linux/linux-5.10/arch/x86/hyperv/ |
D | Makefile | 2 obj-y := hv_init.o mmu.o nested.o
|
/kernel/linux/linux-5.10/Documentation/devicetree/bindings/interrupt-controller/ |
D | arm,vic.txt | 5 nested or have the outputs wire-OR'd together. 20 - interrupts : Interrupt source for parent controllers if the VIC is nested.
|
/kernel/linux/linux-5.10/tools/perf/scripts/python/Perf-Trace-Util/ |
D | Build | 3 …EMBED_CCOPTS) -Wno-redundant-decls -Wno-strict-prototypes -Wno-unused-parameter -Wno-nested-externs
|
/kernel/linux/linux-5.10/tools/perf/scripts/perl/Perf-Trace-Util/ |
D | Build | 4 CFLAGS_Context.o += -Wno-unused-parameter -Wno-nested-externs -Wno-undef
|