/linux/Documentation/userspace-api/ |
H A D | iommufd.rst | 1 .. SPDX-License-Identifier: GPL-2.0+ 19 At minimum iommufd provides universal support of managing I/O address spaces and 20 I/O page tables for all IOMMUs, with room in the design to add non-generic 31 -------------------- 35 - IOMMUFD_OBJ_IOAS, representing an I/O address space (IOAS), allowing map/unmap 41 - IOMMUFD_OBJ_DEVICE, representing a device that is bound to iommufd by an 44 - IOMMUFD_OBJ_HWPT_PAGING, representing an actual hardware I/O page table 48 feature flag. This can be either an UNMANAGED stage-1 domain for a device 49 running in the user space, or a nesting parent stage-2 domain for mappings 50 from guest-level physical addresses to host-level physical addresses. [all …]
|
/linux/Documentation/netlink/specs/ |
H A D | net_shaper.yaml | 1 # SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause) 2 --- 3 name: net-shaper 31 support for complex scheduling hierarchy, or for some shaping 33 @cap-get operation. 36 - 40 render-max: true 42 - name: unspec 44 - 47 - [all …]
|
/linux/include/linux/ |
H A D | kcsan.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 4 * data structures to set up runtime. See kcsan-checks.h for explicit checks and 5 * modifiers. For more info please see Documentation/dev-tools/kcsan.rst. 13 #include <linux/kcsan-checks.h> 20 * task_struct, and interrupts access internal per-CPU storage. 30 * track of nesting. Both (a) and (b) are entirely independent of each 32 * vice-versa. 41 * To support these cases, we independently track the depth of nesting 48 * Access mask for all accesses if non-zero. 58 * barriers; only keep 1 to keep fast-path complexity manageable. [all …]
|
H A D | highmem-internal.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 6 * Outside of CONFIG_HIGHMEM to support X86 32bit iomap_atomic() cruft. 17 DEBUG_LOCKS_WARN_ON(current->kmap_ctrl.idx); in kmap_assert_nomap() 261 * kunmap_atomic - Unmap the virtual address mapped by kmap_atomic() - deprecated! 264 * Unmaps an address previously mapped by kmap_atomic() and re-enables 265 * pagefaults. Depending on PREEMP_RT configuration, re-enables also 269 * See kmap_local_page() for details on nesting. 283 * kunmap_local - Unmap a page mapped via kmap_local_page().
|
H A D | kcsan-checks.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 16 /* Access types -- if KCSAN_ACCESS_WRITE is not set, the access is a read. */ 18 #define KCSAN_ACCESS_COMPOUND (1 << 1) /* Compounded read-write instrumentation. */ 31 * __kcsan_check_access - check generic access for races 42 * memory orders to the LKMM memory orders and vice-versa! 50 * __kcsan_mb - full memory barrier instrumentation 55 * __kcsan_wmb - write memory barrier instrumentation 60 * __kcsan_rmb - read memory barrier instrumentation 65 * __kcsan_release - release barrier instrumentation 70 * kcsan_disable_current - disable KCSAN for the current context [all …]
|
H A D | highmem.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 14 #include "highmem-internal.h" 17 * kmap - Map a page for long term usage 40 * kunmap - Unmap the virtual address mapped by kmap() 49 * kmap_to_page - Get the page for a kmap'ed address 57 * kmap_flush_unused - Flush all unused kmap mappings in order to 63 * kmap_local_page - Map a page for temporary usage 70 * Requires careful handling when nesting multiple mappings because the map 99 * kmap_local_folio - Map a page in this folio for temporary usage 103 * Requires careful handling when nesting multiple mappings because the map [all …]
|
/linux/Documentation/virt/kvm/x86/ |
H A D | running-nested-guests.rst | 1 .. SPDX-License-Identifier: GPL-2.0 8 can be KVM-based or a different hypervisor). The straightforward 12 .----------------. .----------------. 17 |----------------'--'----------------| 22 .------------------------------------------------------. 25 |------------------------------------------------------| 27 '------------------------------------------------------' 31 - L0 – level-0; the bare metal host, running KVM 33 - L1 – level-1 guest; a VM running on L0; also called the "guest 36 - L2 – level-2 guest; a VM running on L1, this is the "nested guest" [all …]
|
/linux/Documentation/bpf/ |
H A D | map_of_maps.rst | 1 .. SPDX-License-Identifier: GPL-2.0-only 9 - ``BPF_MAP_TYPE_ARRAY_OF_MAPS`` and ``BPF_MAP_TYPE_HASH_OF_MAPS`` were 13 purpose support for map in map storage. One level of nesting is supported, where 15 ``array_of_maps->sock_map``. 27 - Multi-level nesting is not supported. 28 - Any BPF map type can be used as an inner map, except for 30 - A BPF program cannot update or delete outer map entries. 32 For ``BPF_MAP_TYPE_ARRAY_OF_MAPS`` the key is an unsigned 32-bit integer index 38 the max_entries limit that you specify. Hash maps use pre-allocation of hash 40 pre-allocation when it is too memory expensive. [all …]
|
/linux/Documentation/networking/ |
H A D | openvswitch.rst | 1 .. SPDX-License-Identifier: GPL-2.0 8 flow-level packet processing on selected network devices. It can be 10 VLAN processing, network access control, flow-based network control, 26 packets of the same type entirely in-kernel). 30 ---------------------- 36 might even be desirable, someday, to drop support for parsing 41 To support this forward and backward compatibility, whenever the 45 kernel-provided version: 47 - If userspace's notion of the flow key for the packet matches the 50 - If the kernel's flow key includes more fields than the userspace [all …]
|
/linux/Documentation/userspace-api/netlink/ |
H A D | genetlink-legacy.rst | 1 .. SPDX-License-Identifier: BSD-3-Clause 4 Netlink specification support for legacy Generic Netlink families 9 the ``genetlink-legacy`` protocol level. 15 ------- 29 -------------------- 31 New Netlink families should use ``multi-attr`` to define arrays. 35 For reference the ``multi-attr`` array may look like this:: 37 [ARRAY-ATTR] 41 [SOME-OTHER-ATTR] 42 [ARRAY-ATTR] [all …]
|
/linux/arch/arm64/kvm/vgic/ |
H A D | vgic-v3-nested.c | 1 // SPDX-License-Identifier: GPL-2.0-only 41 return hweight16(shadow_if->lr_map & (BIT(idx) - 1)); in lr_map_idx_to_shadow_idx() 45 * Nesting GICv3 support 47 * On a non-nesting VM (only running at EL0/EL1), the host hypervisor 49 * Consequently, most of the state that is modified by the guest (by ACK-ing 50 * and EOI-ing interrupts) is synced by KVM on each entry/exit, so that we 51 * keep a semi-consistent view of the interrupts. 63 * - on L2 load: move the in-memory L1 vGIC configuration into a shadow, 64 * per-CPU data structure that is used to populate the actual LRs. This is 70 * - on L2 put: perform the inverse transformation, so that the result of L2 [all …]
|
/linux/kernel/locking/ |
H A D | qspinlock.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 5 * (C) Copyright 2013-2015 Hewlett-Packard Development Company, L.P. 6 * (C) Copyright 2013-2014,2018 Red Hat, Inc. 8 * (C) Copyright 2015 Hewlett-Packard Enterprise Development LP 34 * The basic principle of a queue-base [all...] |
/linux/kernel/entry/ |
H A D | common.c | 1 // SPDX-License-Identifier: GPL-2.0 3 #include <linux/irq-entry-common.h> 15 * exit_to_user_mode_loop - do any pending work before leaving to user space 100 * Checking for rcu_is_watching() here would prevent the nesting in irqentry_enter() 109 * TINY_RCU does not support EQS, so let the compiler eliminate in irqentry_enter() 147 * arch_irqentry_exit_need_resched - Architecture specific need resched function
|
/linux/kernel/rcu/ |
H A D | Kconfig.debug | 1 # SPDX-License-Identifier: GPL-2.0-only 3 # RCU-related debugging configuration options 19 false-positive splats, we keep it default disabled but once all 63 Note that PREEMPT_COUNT must be enabled if the preempt-disabled 64 and bh-disabled checks are to take effect, and that PREEMPT_RCU 65 must be enabled for the RCU-nesting checks to take effect. 78 log of failure/close-call rcutorture reader segments with the 88 bool "Log grace-period numbers for rcutorture failures" 93 log of failure/close-call rcutorture reader segments with the 94 corresponding grace-period sequence numbers. This information [all …]
|
H A D | tasks.h | 1 /* SPDX-License-Identifier: GPL-2.0+ */ 3 * Task-based RCU implementations. 24 * struct rcu_tasks_percpu - Per-CPU component of definition for a Tasks-RCU-like mechanism. 26 * @lock: Lock protecting per-CPU callback list. 29 * @urgent_gp: Number of additional non-laz 1633 int nesting; trc_read_check_handler() local 1670 int nesting; trc_inspect_reader() local 1875 int nesting; global() member [all...] |
/linux/fs/xfs/ |
H A D | xfs_inode.h | 1 // SPDX-License-Identifier: GPL-2.0 3 * Copyright (c) 2000-2003,2005 Silicon Graphics, Inc. 106 return ip->i_prev_unlinked != 0; in xfs_inode_on_unlinked_list() 111 return ip->i_forkoff > 0; in xfs_inode_has_attr_fork() 121 return &ip->i_df; in xfs_ifork_ptr() 125 return &ip->i_af; in xfs_ifork_ptr() 127 return ip->i_cowfp; in xfs_ifork_ptr() 136 return ip->i_forkoff << 3; in xfs_inode_fork_boff() 144 return XFS_LITINO(ip->i_mount); in xfs_inode_data_fork_size() 150 return XFS_LITINO(ip->i_mount) - xfs_inode_fork_boff(ip); in xfs_inode_attr_fork_size() [all …]
|
/linux/arch/powerpc/include/asm/book3s/64/ |
H A D | kup.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 102 * save AMR -> stack; 105 * KUAP_BLOCKED -> AMR; 108 * save IAMR -> stack; 110 * KUEP_BLOCKED ->IAMR 118 * save AMR -> stack; 120 * KUAP_BLOCKED -> AMR; 212 * thread-specific and we inherit the address space and not thread 218 if (current->thread.regs) in current_thread_amr() 219 return current->thread.regs->amr; in current_thread_amr() [all …]
|
/linux/drivers/acpi/acpica/ |
H A D | dsinit.c | 1 // SPDX-License-Identifier: BSD-3-Clause OR GPL-2.0 4 * Module Name: dsinit - Object initialization namespace walk 6 * Copyright (C) 2000 - 2025, Intel Corp. 29 * PARAMETERS: obj_handle - Node for the object 30 * level - Current nesting level 31 * context - Points to a init info struct 32 * return_value - Not used 62 if (node->owner_id != info->owner_id) { in acpi_ds_init_one_object() 66 info->object_count++; in acpi_ds_init_one_object() 81 info->op_region_count++; in acpi_ds_init_one_object() [all …]
|
H A D | utownerid.c | 1 // SPDX-License-Identifier: BSD-3-Clause OR GPL-2.0 4 * Module Name: utownerid - Support for Table/Method Owner IDs 19 * PARAMETERS: owner_id - Where the new owner ID is returned 114 * If this error happens, there may be very deep nesting of invoked in acpi_ut_allocate_owner_id() 130 * PARAMETERS: owner_id_ptr - Pointer to a previously allocated owner_ID 136 * DESCRIPTION: Release a table or method owner ID. Valid IDs are 1 - 255 169 owner_id--; in acpi_ut_release_owner_id() 182 "Attempted release of non-allocated OwnerId: 0x%3.3X", in acpi_ut_release_owner_id()
|
H A D | nsinit.c | 1 // SPDX-License-Identifier: BSD-3-Clause OR GPL-2.0 4 * Module Name: nsinit - namespace initialization 6 * Copyright (C) 2000 - 2025, Intel Corp. 148 * This support is provided for Windows compatibility (Vista+) and in acpi_ns_initialize_devices() 151 info.evaluate_info->prefix_node = acpi_gbl_root_node; in acpi_ns_initialize_devices() 152 info.evaluate_info->relative_pathname = METHOD_NAME__INI; in acpi_ns_initialize_devices() 153 info.evaluate_info->parameters = NULL; in acpi_ns_initialize_devices() 154 info.evaluate_info->flags = ACPI_IGNORE_RETURN_VALUE; in acpi_ns_initialize_devices() 170 info.evaluate_info->prefix_node = handle; in acpi_ns_initialize_devices() 171 info.evaluate_info->relative_pathname = in acpi_ns_initialize_devices() [all …]
|
H A D | dscontrol.c | 1 // SPDX-License-Identifier: BSD-3-Clause OR GPL-2.0 4 * Module Name: dscontrol - Support for execution control opcodes - 7 * Copyright (C) 2000 - 2025, Intel Corp. 25 * PARAMETERS: walk_list - The list that owns the walk stack 26 * op - The control Op 44 op, op->common.aml_opcode, walk_state)); in acpi_ds_exec_begin_control_op() 46 switch (op->common.aml_opcode) { in acpi_ds_exec_begin_control_op() 52 if (walk_state->control_state) { in acpi_ds_exec_begin_control_op() 53 if (walk_state->control_state->control. in acpi_ds_exec_begin_control_op() 55 (walk_state->parser_state.aml - 1)) { in acpi_ds_exec_begin_control_op() [all …]
|
/linux/Documentation/RCU/Design/Data-Structures/ |
H A D | Data-Structures.rst | 15 Data-Structure Relationships 25 .. kernel-figure:: BigTreeClassicRCU.svg 34 which results in a three-level ``rcu_node`` tree. 38 The purpose of this combining tree is to allow per-CPU events 39 such as quiescent states, dyntick-idle transitions, 42 Quiescent states are recorded by the per-CPU ``rcu_data`` structures, 43 and other events are recorded by the leaf-level ``rcu_node`` 54 As can be seen from the diagram, on a 64-bit system 55 a two-level tree with 64 leaves can accommodate 1,024 CPUs, with a fanout 58 +-----------------------------------------------------------------------+ [all …]
|
/linux/scripts/ |
H A D | unifdef.c | 2 * Copyright (c) 2002 - 2011 Tony Finch <dot@dotat.at> 27 * unifdef - remove ifdef'ed lines 30 * It was rewritten to support ANSI C by Tony Finch. The original version 31 * of unifdef carried the 4-clause BSD copyright licence. None of its code 60 "@(#) $Version: unifdef-2.5 $\n" 99 IS_TRUE_PREFIX, /* first non-false #(el)if is true */ 100 IS_PASS_MIDDLE, /* first non-false #(el)if is unknown */ 122 STARTING_COMMENT, /* just after slash-backslash-newline */ 123 FINISHING_COMMENT, /* star-backslash-newline in a C comment */ 146 #define MAXDEPTH 64 /* maximum #if nesting */ [all …]
|
/linux/net/bluetooth/ |
H A D | l2cap_sock.c | 2 BlueZ - Bluetooth protocol stack for Linux 3 Copyright (C) 2000-2001 Qualcomm Incorporated 4 Copyright (C) 2009-2010 Gustavo F. Padovan <gustavo@padovan.org> 53 return sock && sock->ops == &l2cap_sock_ops; in l2cap_is_socket() 61 return -EINVAL; in l2cap_validate_bredr_psm() 63 /* Restrict usage of well-known PSMs */ in l2cap_validate_bredr_psm() 65 return -EACCES; in l2cap_validate_bredr_psm() 74 return -EINVAL; in l2cap_validate_le_psm() 78 return -EACCES; in l2cap_validate_le_psm() 85 struct sock *sk = sock->sk; in l2cap_sock_bind() [all …]
|
/linux/arch/x86/kernel/fpu/ |
H A D | core.c | 1 // SPDX-License-Identifier: GPL-2.0-only 5 * Pentium III FXSR, SSE support 49 * Track FPU initialization and kernel-mode usage. 'true' means the FPU is 62 if (WARN_ON_ONCE(task->flags & PF_KTHREAD)) in x86_task_fpu() 81 * - FPU is not yet initialized. This can happen only when the call is in irq_fpu_usable() 83 * - The kernel is already using the FPU, either because of explicit in irq_fpu_usable() 84 * nesting (which should never be done), or because of implicit in irq_fpu_usable() 85 * nesting when a hardirq interrupted a kernel-mode FPU section. in irq_fpu_usable() 95 * - Task context except from within fpregs_lock()'ed critical in irq_fpu_usable() 98 * - Soft interrupt processing context which cannot happen in irq_fpu_usable() [all …]
|