| /kernel/linux/linux-5.10/kernel/ |
| D | cpu.c | 1 /* CPU control. 17 #include <linux/cpu.h> 35 #include <linux/percpu-rwsem.h> 46 * cpuhp_cpu_state - Per cpu hotplug state storage 47 * @state: The current cpu state 52 * @single: Single callback invocation 53 * @bringup: Single callback bringup or teardown selector 54 * @cb_state: The state for a single callback (install/uninstall) 56 * @done_up: Signal completion to the issuer of the task for cpu-up 57 * @done_down: Signal completion to the issuer of the task for cpu-down [all …]
|
| /kernel/linux/linux-6.6/kernel/ |
| D | cpu.c | 1 /* CPU control. 17 #include <linux/cpu.h> 36 #include <linux/percpu-rwsem.h> 48 * struct cpuhp_cpu_state - Per cpu hotplug state storage 49 * @state: The current cpu state 51 * @fail: Current CPU hotplug callback state 55 * @single: Single callback invocation 56 * @bringup: Single callback bringup or teardown selector 57 * @cpu: CPU number 58 * @node: Remote CPU node; for multi-instance, do a [all …]
|
| /kernel/linux/linux-6.6/include/linux/ |
| D | cpu_pm.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 16 * When a CPU goes to a low power state that turns off power to the CPU's 25 * The notifications are split into two classes: CPU notifications and CPU 28 * CPU notifications apply to a single CPU and must be called on the affected 29 * CPU. They are used to save per-cpu context for affected blocks. 31 * CPU cluster notifications apply to all CPUs in a single power domain. They 41 /* A single cpu is entering a low power state */ 44 /* A single cpu failed to enter a low power state */ 47 /* A single cpu is exiting a low power state */ 50 /* A cpu power domain is entering a low power state */ [all …]
|
| /kernel/linux/linux-5.10/include/linux/ |
| D | cpu_pm.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 16 * When a CPU goes to a low power state that turns off power to the CPU's 25 * The notifications are split into two classes: CPU notifications and CPU 28 * CPU notifications apply to a single CPU and must be called on the affected 29 * CPU. They are used to save per-cpu context for affected blocks. 31 * CPU cluster notifications apply to all CPUs in a single power domain. They 41 /* A single cpu is entering a low power state */ 44 /* A single cpu failed to enter a low power state */ 47 /* A single cpu is exiting a low power state */ 50 /* A cpu power domain is entering a low power state */ [all …]
|
| /kernel/linux/linux-6.6/Documentation/tools/rtla/ |
| D | rtla-hwnoise.rst | 1 .. SPDX-License-Identifier: GPL-2.0 4 rtla-hwnoise 6 ------------------------------------------ 7 Detect and quantify hardware-related noise 8 ------------------------------------------ 22 of threads as a consequence, only non-maskable interrupts and hardware-related 38 In the example below, the **rtla hwnoise** tool is set to run on CPUs *1-7* 39 on a system with 8 cores/16 threads with hyper-threading enabled. 45 # rtla hwnoise -c 1-7 -T 1 -d 10m -q 46 Hardware-related Noise [all …]
|
| /kernel/linux/linux-6.6/Documentation/driver-api/ |
| D | edac.rst | 5 ---------------------------------------- 8 *sockets, *socket sets*, *banks*, *rows*, *chip-select rows*, *channels*, 32 A physical connector on the motherboard that accepts a single memory 43 It is typically the highest hierarchy on a Fully-Buffered DIMM memory 45 same branch can be used in single mode or in lockstep mode. When 50 of correcting more errors than on single mode. 52 * Single-channel 55 only. E. g. if the data is 64 bits-wide, the data flows to the CPU using 57 memories. FB-DIMM and RAMBUS use a different concept for channel, so 60 * Double-channel [all …]
|
| /kernel/linux/linux-5.10/Documentation/driver-api/ |
| D | edac.rst | 5 ---------------------------------------- 8 *sockets, *socket sets*, *banks*, *rows*, *chip-select rows*, *channels*, 32 A physical connector on the motherboard that accepts a single memory 43 It is typically the highest hierarchy on a Fully-Buffered DIMM memory 45 same branch can be used in single mode or in lockstep mode. When 50 of correcting more errors than on single mode. 52 * Single-channel 55 only. E. g. if the data is 64 bits-wide, the data flows to the CPU using 57 memories. FB-DIMM and RAMBUS use a different concept for channel, so 60 * Double-channel [all …]
|
| /kernel/linux/linux-6.6/Documentation/arch/x86/ |
| D | topology.rst | 1 .. SPDX-License-Identifier: GPL-2.0 11 The architecture-agnostic topology definitions are in 12 Documentation/admin-guide/cputopology.rst. This file holds x86-specific 17 Needless to say, code should use the generic functions - this file is *only* 28 the past a socket always contained a single package (see below), but with the 35 - packages 36 - cores 37 - threads 48 Package-related topology information in the kernel: 50 - cpuinfo_x86.x86_max_cores: [all …]
|
| D | tlb.rst | 1 .. SPDX-License-Identifier: GPL-2.0 10 1. Flush the entire TLB with a two-instruction sequence. This is 14 2. Use the invlpg instruction to invalidate a single page at a 32 4. The microarchitecture. The TLB has become a multi-level 34 expensive relative to single-page flushes. 53 Despite the fact that a single individual flush on x86 is 67 perf stat -e 68 cpu/event=0x8,umask=0x84,name=dtlb_load_misses_walk_duration/, 69 cpu/event=0x8,umask=0x82,name=dtlb_load_misses_walk_completed/, 70 cpu/event=0x49,umask=0x4,name=dtlb_store_misses_walk_duration/, [all …]
|
| /kernel/linux/linux-5.10/Documentation/x86/ |
| D | topology.rst | 1 .. SPDX-License-Identifier: GPL-2.0 11 The architecture-agnostic topology definitions are in 12 Documentation/admin-guide/cputopology.rst. This file holds x86-specific 17 Needless to say, code should use the generic functions - this file is *only* 28 the past a socket always contained a single package (see below), but with the 35 - packages 36 - cores 37 - threads 48 Package-related topology information in the kernel: 50 - cpuinfo_x86.x86_max_cores: [all …]
|
| D | tlb.rst | 1 .. SPDX-License-Identifier: GPL-2.0 10 1. Flush the entire TLB with a two-instruction sequence. This is 14 2. Use the invlpg instruction to invalidate a single page at a 32 4. The microarchitecture. The TLB has become a multi-level 34 expensive relative to single-page flushes. 53 Despite the fact that a single individual flush on x86 is 67 perf stat -e 68 cpu/event=0x8,umask=0x84,name=dtlb_load_misses_walk_duration/, 69 cpu/event=0x8,umask=0x82,name=dtlb_load_misses_walk_completed/, 70 cpu/event=0x49,umask=0x4,name=dtlb_store_misses_walk_duration/, [all …]
|
| /kernel/linux/linux-5.10/arch/sparc/kernel/ |
| D | sun4d_smp.c | 1 // SPDX-License-Identifier: GPL-2.0 15 #include <linux/cpu.h> 73 /* Unblock the master CPU _only_ when the scheduler state in sun4d_cpu_pre_online() 74 * of all secondary CPUs will be up-to-date, so after in sun4d_cpu_pre_online() 79 local_ops->cache_all(); in sun4d_cpu_pre_online() 80 local_ops->tlb_all(); in sun4d_cpu_pre_online() 85 while (current_set[cpuid]->cpu != cpuid) in sun4d_cpu_pre_online() 98 current->active_mm = &init_mm; in sun4d_cpu_pre_online() 100 local_ops->cache_all(); in sun4d_cpu_pre_online() 101 local_ops->tlb_all(); in sun4d_cpu_pre_online() [all …]
|
| D | leon_smp.c | 1 // SPDX-License-Identifier: GPL-2.0 2 /* leon_smp.c: Sparc-Leon SMP support. 27 #include <linux/cpu.h> 81 * go-ahead by setting the smp_commenced_mask and will wait without in leon_cpu_pre_online() 87 local_ops->cache_all(); in leon_cpu_pre_online() 88 local_ops->tlb_all(); in leon_cpu_pre_online() 96 current->active_mm = &init_mm; in leon_cpu_pre_online() 114 …printk(KERN_INFO "Note: SMP with snooping only works on 4k cache, found %dk(0x%x) on cpu %d, disab… in leon_configure_cache_smp() 122 … printk(KERN_INFO "Note: You have to enable snooping in the vhdl model cpu %d, disabling caches\n", in leon_configure_cache_smp() 128 local_ops->cache_all(); in leon_configure_cache_smp() [all …]
|
| /kernel/linux/linux-6.6/arch/sparc/kernel/ |
| D | sun4d_smp.c | 1 // SPDX-License-Identifier: GPL-2.0 15 #include <linux/cpu.h> 73 /* Unblock the master CPU _only_ when the scheduler state in sun4d_cpu_pre_online() 74 * of all secondary CPUs will be up-to-date, so after in sun4d_cpu_pre_online() 79 local_ops->cache_all(); in sun4d_cpu_pre_online() 80 local_ops->tlb_all(); in sun4d_cpu_pre_online() 85 while (current_set[cpuid]->cpu != cpuid) in sun4d_cpu_pre_online() 98 current->active_mm = &init_mm; in sun4d_cpu_pre_online() 100 local_ops->cache_all(); in sun4d_cpu_pre_online() 101 local_ops->tlb_all(); in sun4d_cpu_pre_online() [all …]
|
| D | leon_smp.c | 1 // SPDX-License-Identifier: GPL-2.0 2 /* leon_smp.c: Sparc-Leon SMP support. 27 #include <linux/cpu.h> 81 * go-ahead by setting the smp_commenced_mask and will wait without in leon_cpu_pre_online() 87 local_ops->cache_all(); in leon_cpu_pre_online() 88 local_ops->tlb_all(); in leon_cpu_pre_online() 96 current->active_mm = &init_mm; in leon_cpu_pre_online() 114 …printk(KERN_INFO "Note: SMP with snooping only works on 4k cache, found %dk(0x%x) on cpu %d, disab… in leon_configure_cache_smp() 122 … printk(KERN_INFO "Note: You have to enable snooping in the vhdl model cpu %d, disabling caches\n", in leon_configure_cache_smp() 128 local_ops->cache_all(); in leon_configure_cache_smp() [all …]
|
| /kernel/linux/linux-6.6/fs/squashfs/ |
| D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 3 tristate "SquashFS 4.0 - Squashed file system support" 7 Read-Only File System). Squashfs is a highly compressed read-only 16 Squashfs is intended for general read-only filesystem use, for 53 on the single buffer. 88 decompression. Each one exhibits various trade-offs between 89 decompression performance and CPU and memory usage. 91 If in doubt, select "Single threaded compression" 94 bool "Single threaded compression" 97 Traditionally Squashfs has used single-threaded decompression. [all …]
|
| /kernel/linux/linux-5.10/fs/squashfs/ |
| D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 3 tristate "SquashFS 4.0 - Squashed file system support" 7 Read-Only File System). Squashfs is a highly compressed read-only 16 Squashfs is intended for general read-only filesystem use, for 53 on the single buffer. 62 decompression. Each one exhibits various trade-offs between 63 decompression performance and CPU and memory usage. 65 If in doubt, select "Single threaded compression" 68 bool "Single threaded compression" 70 Traditionally Squashfs has used single-threaded decompression. [all …]
|
| /kernel/linux/linux-5.10/tools/memory-model/Documentation/ |
| D | simple.txt | 2 memory-ordering lives simple, as is necessary for those whose domain 3 is complex. After all, there are bugs other than memory-ordering bugs, 4 and the time spent gaining memory-ordering knowledge is not available 5 for gaining domain knowledge. Furthermore Linux-kernel memory model 15 of MMIO-based device drivers will often need to use mb(), rmb(), and 22 Single-threaded code 25 In single-threaded code, there is no reordering, at least assuming 27 it is generally a mistake to assume your code will only run in a single 33 your code really is executed within a single thread that does not access 38 this lock at a given time, your code will be executed single-threaded. [all …]
|
| /kernel/linux/linux-6.6/tools/memory-model/Documentation/ |
| D | simple.txt | 2 memory-ordering lives simple, as is necessary for those whose domain 3 is complex. After all, there are bugs other than memory-ordering bugs, 4 and the time spent gaining memory-ordering knowledge is not available 5 for gaining domain knowledge. Furthermore Linux-kernel memory model 15 of MMIO-based device drivers will often need to use mb(), rmb(), and 22 Single-threaded code 25 In single-threaded code, there is no reordering, at least assuming 27 it is generally a mistake to assume your code will only run in a single 33 your code really is executed within a single thread that does not access 38 this lock at a given time, your code will be executed single-threaded. [all …]
|
| /kernel/linux/linux-6.6/Documentation/devicetree/bindings/interrupt-controller/ |
| D | apple,aic.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/interrupt-controller/apple,aic.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Hector Martin <marcan@marcan.st> 19 - Level-triggered hardware IRQs wired to SoC blocks 20 - Single mask bit per IRQ 21 - Per-IRQ affinity setting 22 - Automatic masking on event delivery (auto-ack) 23 - Software triggering (ORed with hw line) [all …]
|
| /kernel/linux/linux-6.6/Documentation/networking/ |
| D | scaling.rst | 1 .. SPDX-License-Identifier: GPL-2.0 13 multi-processor systems. 17 - RSS: Receive Side Scaling 18 - RPS: Receive Packet Steering 19 - RFS: Receive Flow Steering 20 - Accelerated Receive Flow Steering 21 - XPS: Transmit Packet Steering 28 (multi-queue). On reception, a NIC can send different packets to different 33 generally known as “Receive-side Scaling” (RSS). The goal of RSS and 35 Multi-queue distribution can also be used for traffic prioritization, but [all …]
|
| /kernel/linux/linux-5.10/Documentation/networking/ |
| D | scaling.rst | 1 .. SPDX-License-Identifier: GPL-2.0 13 multi-processor systems. 17 - RSS: Receive Side Scaling 18 - RPS: Receive Packet Steering 19 - RFS: Receive Flow Steering 20 - Accelerated Receive Flow Steering 21 - XPS: Transmit Packet Steering 28 (multi-queue). On reception, a NIC can send different packets to different 33 generally known as “Receive-side Scaling” (RSS). The goal of RSS and 35 Multi-queue distribution can also be used for traffic prioritization, but [all …]
|
| /kernel/linux/linux-6.6/kernel/debug/kdb/ |
| D | kdb_debugger.c | 40 kdb_current_task = kgdb_info[ks->cpu].task; in kdb_common_init_state() 41 kdb_current_regs = kgdb_info[ks->cpu].debuggerinfo; in kdb_common_init_state() 47 kdb_initial_cpu = -1; in kdb_common_deinit_state() 57 unsigned long addr = kgdb_arch_pc(ks->ex_vector, ks->linux_regs); in kdb_stub() 66 addr = instruction_pointer(ks->linux_regs); in kdb_stub() 68 ks->pass_exception = 0; in kdb_stub() 72 if (ks->err_code == KDB_REASON_SYSTEM_NMI && ks->signo == SIGTRAP) in kdb_stub() 79 if ((bp->bp_enabled) && (bp->bp_addr == addr)) { in kdb_stub() 82 if (addr != instruction_pointer(ks->linux_regs)) in kdb_stub() 83 kgdb_arch_set_pc(ks->linux_regs, addr); in kdb_stub() [all …]
|
| /kernel/linux/linux-5.10/kernel/debug/kdb/ |
| D | kdb_debugger.c | 40 kdb_current_task = kgdb_info[ks->cpu].task; in kdb_common_init_state() 41 kdb_current_regs = kgdb_info[ks->cpu].debuggerinfo; in kdb_common_init_state() 47 kdb_initial_cpu = -1; in kdb_common_deinit_state() 57 unsigned long addr = kgdb_arch_pc(ks->ex_vector, ks->linux_regs); in kdb_stub() 66 addr = instruction_pointer(ks->linux_regs); in kdb_stub() 68 ks->pass_exception = 0; in kdb_stub() 72 if (ks->err_code == KDB_REASON_SYSTEM_NMI && ks->signo == SIGTRAP) in kdb_stub() 79 if ((bp->bp_enabled) && (bp->bp_addr == addr)) { in kdb_stub() 82 if (addr != instruction_pointer(ks->linux_regs)) in kdb_stub() 83 kgdb_arch_set_pc(ks->linux_regs, addr); in kdb_stub() [all …]
|
| /kernel/linux/linux-5.10/arch/mips/boot/dts/ralink/ |
| D | mt7628a.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 4 #address-cells = <1>; 5 #size-cells = <1>; 6 compatible = "ralink,mt7628a-soc"; 9 #address-cells = <1>; 10 #size-cells = <0>; 12 cpu@0 { 14 device_type = "cpu"; 19 resetc: reset-controller { 20 compatible = "ralink,rt2880-reset"; [all …]
|