| /kernel/linux/linux-6.6/tools/perf/util/ |
| D | cpumap.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 10 /** Identify where counts are aggregated, -1 implies not to aggregate. */ 14 /** The numa node X as read from /sys/devices/system/node/nodeX. */ 17 * The socket number as read from 18 * /sys/devices/system/cpu/cpuX/topology/physical_package_id. 21 /** The die id as read from /sys/devices/system/cpu/cpuX/topology/die_id. */ 23 /** The cache level as read from /sys/devices/system/cpu/cpuX/cache/indexY/level */ 26 * The cache instance ID, which is the first CPU in the 27 * /sys/devices/system/cpu/cpuX/cache/indexY/shared_cpu_list 30 /** The core id as read from /sys/devices/system/cpu/cpuX/topology/core_id. */ [all …]
|
| /kernel/linux/linux-6.6/tools/virtio/virtio-trace/ |
| D | trace-agent.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Guest agent for virtio-trace 15 #include "trace-agent.h" 23 #define READ_PATH_FMT "%s/per_cpu/cpu%d/trace_pipe_raw" 24 #define WRITE_PATH_FMT "/dev/virtio-ports/trace-path-cpu%d" 25 #define CTL_PATH "/dev/virtio-ports/agent-ctl-path" 35 pr_err("Could not read cpus\n"); in get_total_cpus() 59 s->pipe_size = PIPE_INIT; in agent_info_new() 60 s->use_stdout = false; in agent_info_new() 61 s->cpus = get_total_cpus(); in agent_info_new() [all …]
|
| D | trace-agent-rw.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Read/write thread of a guest agent for virtio-trace 16 #include "trace-agent.h" 30 rw_ti->cpu_num = -1; in rw_thread_info_new() 31 rw_ti->in_fd = -1; in rw_thread_info_new() 32 rw_ti->out_fd = -1; in rw_thread_info_new() 33 rw_ti->read_pipe = -1; in rw_thread_info_new() 34 rw_ti->write_pipe = -1; in rw_thread_info_new() 35 rw_ti->pipe_size = PIPE_INIT; in rw_thread_info_new() 40 void *rw_thread_init(int cpu, const char *in_path, const char *out_path, in rw_thread_init() argument [all …]
|
| /kernel/linux/linux-5.10/tools/virtio/virtio-trace/ |
| D | trace-agent.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Guest agent for virtio-trace 15 #include "trace-agent.h" 22 "/sys/kernel/debug/tracing/per_cpu/cpu%d/trace_pipe_raw" 23 #define WRITE_PATH_FMT "/dev/virtio-ports/trace-path-cpu%d" 24 #define CTL_PATH "/dev/virtio-ports/agent-ctl-path" 34 pr_err("Could not read cpus\n"); in get_total_cpus() 58 s->pipe_size = PIPE_INIT; in agent_info_new() 59 s->use_stdout = false; in agent_info_new() 60 s->cpus = get_total_cpus(); in agent_info_new() [all …]
|
| D | trace-agent-rw.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Read/write thread of a guest agent for virtio-trace 16 #include "trace-agent.h" 30 rw_ti->cpu_num = -1; in rw_thread_info_new() 31 rw_ti->in_fd = -1; in rw_thread_info_new() 32 rw_ti->out_fd = -1; in rw_thread_info_new() 33 rw_ti->read_pipe = -1; in rw_thread_info_new() 34 rw_ti->write_pipe = -1; in rw_thread_info_new() 35 rw_ti->pipe_size = PIPE_INIT; in rw_thread_info_new() 40 void *rw_thread_init(int cpu, const char *in_path, const char *out_path, in rw_thread_init() argument [all …]
|
| /kernel/linux/linux-5.10/include/uapi/linux/ |
| D | isst_if.h | 1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ 16 * struct isst_if_platform_info - Define platform information 25 * @mmio_supported: Support of mmio interface for core-power feature 40 * struct isst_if_cpu_map - CPU mapping between logical and physical CPU 41 * @logical_cpu: Linux logical CPU number 42 * @physical_cpu: PUNIT CPU number 44 * Used to convert from Linux logical CPU to PUNIT CPU numbering scheme. 45 * The PUNIT CPU number is different than APIC ID based CPU numbering. 53 * struct isst_if_cpu_maps - structure for CPU map IOCTL 54 * @cmd_count: Number of CPU mapping command in cpu_map[] [all …]
|
| /kernel/linux/linux-6.6/tools/perf/pmu-events/arch/x86/amdzen4/ |
| D | data-fabric.json | 4 … "PublicDescription": "Read data beats (64 bytes) for local processor at Coherent Station (CS) 0.", 12 … "PublicDescription": "Read data beats (64 bytes) for local processor at Coherent Station (CS) 1.", 20 … "PublicDescription": "Read data beats (64 bytes) for local processor at Coherent Station (CS) 2.", 28 … "PublicDescription": "Read data beats (64 bytes) for local processor at Coherent Station (CS) 3.", 36 … "PublicDescription": "Read data beats (64 bytes) for local processor at Coherent Station (CS) 4.", 44 … "PublicDescription": "Read data beats (64 bytes) for local processor at Coherent Station (CS) 5.", 52 … "PublicDescription": "Read data beats (64 bytes) for local processor at Coherent Station (CS) 6.", 60 … "PublicDescription": "Read data beats (64 bytes) for local processor at Coherent Station (CS) 7.", 68 … "PublicDescription": "Read data beats (64 bytes) for local processor at Coherent Station (CS) 8.", 76 … "PublicDescription": "Read data beats (64 bytes) for local processor at Coherent Station (CS) 9.", [all …]
|
| /kernel/linux/linux-5.10/Documentation/core-api/ |
| D | local_ops.rst | 29 Local atomic operations are meant to provide fast and highly reentrant per CPU 34 Having fast per CPU atomic counters is interesting in many cases: it does not 40 CPU which owns the data. Therefore, care must taken to make sure that only one 41 CPU writes to the ``local_t`` data. This is done by using per cpu data and 43 however permitted to read ``local_t`` data from any CPU: it will then appear to 44 be written out of order wrt other memory writes by the owner CPU. 54 ``asm-generic/local.h`` in your architecture's ``local.h`` is sufficient. 66 * Variables touched by local ops must be per cpu variables. 67 * *Only* the CPU owner of these variables must write to them. 68 * This CPU can use local ops from any context (process, irq, softirq, nmi, ...) [all …]
|
| /kernel/linux/linux-6.6/Documentation/core-api/ |
| D | local_ops.rst | 29 Local atomic operations are meant to provide fast and highly reentrant per CPU 34 Having fast per CPU atomic counters is interesting in many cases: it does not 40 CPU which owns the data. Therefore, care must taken to make sure that only one 41 CPU writes to the ``local_t`` data. This is done by using per cpu data and 43 however permitted to read ``local_t`` data from any CPU: it will then appear to 44 be written out of order wrt other memory writes by the owner CPU. 54 ``asm-generic/local.h`` in your architecture's ``local.h`` is sufficient. 66 * Variables touched by local ops must be per cpu variables. 67 * *Only* the CPU owner of these variables must write to them. 68 * This CPU can use local ops from any context (process, irq, softirq, nmi, ...) [all …]
|
| /kernel/linux/linux-6.6/drivers/infiniband/ulp/rtrs/ |
| D | rtrs-clt-stats.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 5 * Copyright (c) 2014 - 2018 ProfitBricks GmbH. All rights reserved. 6 * Copyright (c) 2018 - 2019 1&1 IONOS Cloud GmbH. All rights reserved. 7 * Copyright (c) 2019 - 2020 1&1 IONOS SE. All rights reserved. 12 #include "rtrs-clt.h" 16 struct rtrs_clt_path *clt_path = to_clt_path(con->c.path); in rtrs_clt_update_wc_stats() 17 struct rtrs_clt_stats *stats = clt_path->stats; in rtrs_clt_update_wc_stats() 19 int cpu; in rtrs_clt_update_wc_stats() local 21 cpu = raw_smp_processor_id(); in rtrs_clt_update_wc_stats() 22 s = get_cpu_ptr(stats->pcpu_stats); in rtrs_clt_update_wc_stats() [all …]
|
| D | rtrs-srv-stats.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 5 * Copyright (c) 2014 - 2018 ProfitBricks GmbH. All rights reserved. 6 * Copyright (c) 2018 - 2019 1&1 IONOS Cloud GmbH. All rights reserved. 7 * Copyright (c) 2019 - 2020 1&1 IONOS SE. All rights reserved. 12 #include "rtrs-srv.h" 17 int cpu; in rtrs_srv_reset_rdma_stats() local 20 for_each_possible_cpu(cpu) { in rtrs_srv_reset_rdma_stats() 21 r = per_cpu_ptr(stats->rdma_stats, cpu); in rtrs_srv_reset_rdma_stats() 28 return -EINVAL; in rtrs_srv_reset_rdma_stats() 33 int cpu; in rtrs_srv_stats_rdma_to_str() local [all …]
|
| /kernel/linux/linux-5.10/drivers/infiniband/ulp/rtrs/ |
| D | rtrs-clt-stats.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 5 * Copyright (c) 2014 - 2018 ProfitBricks GmbH. All rights reserved. 6 * Copyright (c) 2018 - 2019 1&1 IONOS Cloud GmbH. All rights reserved. 7 * Copyright (c) 2019 - 2020 1&1 IONOS SE. All rights reserved. 12 #include "rtrs-clt.h" 16 struct rtrs_clt_sess *sess = to_clt_sess(con->c.sess); in rtrs_clt_update_wc_stats() 17 struct rtrs_clt_stats *stats = sess->stats; in rtrs_clt_update_wc_stats() 19 int cpu; in rtrs_clt_update_wc_stats() local 21 cpu = raw_smp_processor_id(); in rtrs_clt_update_wc_stats() 22 s = this_cpu_ptr(stats->pcpu_stats); in rtrs_clt_update_wc_stats() [all …]
|
| /kernel/linux/linux-6.6/drivers/hwtracing/coresight/ |
| D | coresight-trace-id.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 13 * With multi cpu systems, and more additional trace sources a scalable 19 * In order to ensure that a consistent cpu / ID matching is maintained 20 * throughout a perf cs_etm event session - a session in progress flag will 22 * complete. This allows the same CPU to be re-allocated its prior ID. 28 * API permits multiple maps to be maintained - for large systems where 55 * @pend_rel_ids: CPU IDs that have been released by the trace source but not 56 * yet marked as available, to allow re-allocation to the same 57 * CPU during a perf session. 67 * Read and optionally allocate a CoreSight trace ID and associate with a CPU. [all …]
|
| /kernel/linux/linux-6.6/tools/power/cpupower/utils/helpers/ |
| D | sysfs.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * (C) 2004-2009 Dominik Brodowski <linux@dominikbrodowski.de> 24 if (fd == -1) in sysfs_read_file() 27 numread = read(fd, buf, buflen - 1); in sysfs_read_file() 40 * Detect whether a CPU is online 43 * 1 -> if CPU is online 44 * 0 -> if CPU is offline 47 int sysfs_is_cpu_online(unsigned int cpu) in sysfs_is_cpu_online() argument 57 snprintf(path, sizeof(path), PATH_TO_CPU "cpu%u", cpu); in sysfs_is_cpu_online() 64 * -> cpuX directory exists, but not cpuX/online file in sysfs_is_cpu_online() [all …]
|
| /kernel/linux/linux-5.10/tools/power/cpupower/utils/helpers/ |
| D | sysfs.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * (C) 2004-2009 Dominik Brodowski <linux@dominikbrodowski.de> 24 if (fd == -1) in sysfs_read_file() 27 numread = read(fd, buf, buflen - 1); in sysfs_read_file() 40 * Detect whether a CPU is online 43 * 1 -> if CPU is online 44 * 0 -> if CPU is offline 47 int sysfs_is_cpu_online(unsigned int cpu) in sysfs_is_cpu_online() argument 57 snprintf(path, sizeof(path), PATH_TO_CPU "cpu%u", cpu); in sysfs_is_cpu_online() 64 * -> cpuX directory exists, but not cpuX/online file in sysfs_is_cpu_online() [all …]
|
| /kernel/linux/linux-5.10/arch/arm/mach-zynq/ |
| D | slcr.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 5 * Copyright (c) 2011-2013 Xilinx Inc. 19 #define SLCR_A9_CPU_RST_CTRL_OFFSET 0x244 /* CPU Software Reset Control */ 34 * zynq_slcr_write - Write to a register in SLCR block 47 * zynq_slcr_read - Read a register in SLCR block 49 * @val: Pointer to value to be read from SLCR 60 * zynq_slcr_unlock - Unlock SLCR registers 72 * zynq_slcr_get_device_id - Read device code id 88 * zynq_slcr_system_restart - Restart the entire system. 104 * the FSBL not loading the bitstream after soft-reboot in zynq_slcr_system_restart() [all …]
|
| /kernel/linux/linux-6.6/arch/arm/mach-zynq/ |
| D | slcr.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 5 * Copyright (c) 2011-2013 Xilinx Inc. 19 #define SLCR_A9_CPU_RST_CTRL_OFFSET 0x244 /* CPU Software Reset Control */ 34 * zynq_slcr_write - Write to a register in SLCR block 47 * zynq_slcr_read - Read a register in SLCR block 49 * @val: Pointer to value to be read from SLCR 60 * zynq_slcr_unlock - Unlock SLCR registers 72 * zynq_slcr_get_device_id - Read device code id 88 * zynq_slcr_system_restart - Restart the entire system. 104 * the FSBL not loading the bitstream after soft-reboot in zynq_slcr_system_restart() [all …]
|
| /kernel/linux/linux-5.10/tools/memory-model/Documentation/ |
| D | explanation.txt | 1 Explanation of the Linux-Kernel Memory Consistency Model 15 7. THE PROGRAM ORDER RELATION: po AND po-loc 18 10. THE READS-FROM RELATION: rf, rfi, and rfe 20 12. THE FROM-READS RELATION: fr, fri, and fre 22 14. PROPAGATION ORDER RELATION: cumul-fence 28 20. THE HAPPENS-BEFORE RELATION: hb 29 21. THE PROPAGATES-BEFORE RELATION: pb 30 22. RCU RELATIONS: rcu-link, rcu-gp, rcu-rscsi, rcu-order, rcu-fence, and rb 38 ------------ 40 The Linux-kernel memory consistency model (LKMM) is rather complex and [all …]
|
| /kernel/linux/linux-6.6/include/uapi/linux/ |
| D | isst_if.h | 1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ 16 * struct isst_if_platform_info - Define platform information 25 * @mmio_supported: Support of mmio interface for core-power feature 40 * struct isst_if_cpu_map - CPU mapping between logical and physical CPU 41 * @logical_cpu: Linux logical CPU number 42 * @physical_cpu: PUNIT CPU number 44 * Used to convert from Linux logical CPU to PUNIT CPU numbering scheme. 45 * The PUNIT CPU number is different than APIC ID based CPU numbering. 53 * struct isst_if_cpu_maps - structure for CPU map IOCTL 54 * @cmd_count: Number of CPU mapping command in cpu_map[] [all …]
|
| /kernel/linux/linux-5.10/kernel/trace/ |
| D | ring_buffer.c | 1 // SPDX-License-Identifier: GPL-2.0 26 #include <linux/cpu.h> 57 * allocated for each CPU. A writer may only write to a buffer that is 58 * associated with the CPU it is currently executing on. A reader may read 59 * from any per cpu buffer. 61 * The reader is special. For each per cpu buffer, the reader has its own 62 * reader page. When a reader has read the entire reader page, this reader 71 * +------+ 74 * +------+ +---+ +---+ +---+ 75 * | |-->| |-->| | [all …]
|
| /kernel/linux/linux-6.6/tools/power/cpupower/lib/ |
| D | cpuidle.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * (C) 2004-2009 Dominik Brodowski <linux@dominikbrodowski.de> 22 * For example the functionality to disable c-states was introduced in later 29 unsigned int cpuidle_state_file_exists(unsigned int cpu, in cpuidle_state_file_exists() argument 37 snprintf(path, sizeof(path), PATH_TO_CPU "cpu%u/cpuidle/state%u/%s", in cpuidle_state_file_exists() 38 cpu, idlestate, fname); in cpuidle_state_file_exists() 45 * helper function to read file from /sys into given buffer 51 unsigned int cpuidle_state_read_file(unsigned int cpu, in cpuidle_state_read_file() argument 60 snprintf(path, sizeof(path), PATH_TO_CPU "cpu%u/cpuidle/state%u/%s", in cpuidle_state_read_file() 61 cpu, idlestate, fname); in cpuidle_state_read_file() [all …]
|
| /kernel/linux/linux-5.10/tools/power/cpupower/lib/ |
| D | cpuidle.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * (C) 2004-2009 Dominik Brodowski <linux@dominikbrodowski.de> 22 * For example the functionality to disable c-states was introduced in later 29 unsigned int cpuidle_state_file_exists(unsigned int cpu, in cpuidle_state_file_exists() argument 37 snprintf(path, sizeof(path), PATH_TO_CPU "cpu%u/cpuidle/state%u/%s", in cpuidle_state_file_exists() 38 cpu, idlestate, fname); in cpuidle_state_file_exists() 45 * helper function to read file from /sys into given buffer 51 unsigned int cpuidle_state_read_file(unsigned int cpu, in cpuidle_state_read_file() argument 60 snprintf(path, sizeof(path), PATH_TO_CPU "cpu%u/cpuidle/state%u/%s", in cpuidle_state_read_file() 61 cpu, idlestate, fname); in cpuidle_state_read_file() [all …]
|
| /kernel/linux/linux-6.6/tools/memory-model/Documentation/ |
| D | explanation.txt | 1 Explanation of the Linux-Kernel Memory Consistency Model 15 7. THE PROGRAM ORDER RELATION: po AND po-loc 18 10. THE READS-FROM RELATION: rf, rfi, and rfe 20 12. THE FROM-READS RELATION: fr, fri, and fre 22 14. PROPAGATION ORDER RELATION: cumul-fence 28 20. THE HAPPENS-BEFORE RELATION: hb 29 21. THE PROPAGATES-BEFORE RELATION: pb 30 22. RCU RELATIONS: rcu-link, rcu-gp, rcu-rscsi, rcu-order, rcu-fence, and rb 31 23. SRCU READ-SIDE CRITICAL SECTIONS 39 ------------ [all …]
|
| /kernel/linux/linux-6.6/arch/mips/include/asm/sn/sn0/ |
| D | hubpi.h | 8 * Copyright (C) 1992 - 1997, 1999 Silicon Graphics, Inc. 28 #define PI_CPU_PROTECT 0x000000 /* CPU Protection */ 29 #define PI_PROT_OVERRD 0x000008 /* Clear CPU Protection bit */ 32 #define PI_CPU_NUM 0x000020 /* CPU Number ID */ 57 #define PI_CPU_PRESENT_A 0x000040 /* CPU Present A */ 58 #define PI_CPU_PRESENT_B 0x000048 /* CPU Present B */ 59 #define PI_CPU_ENABLE_A 0x000050 /* CPU Enable A */ 60 #define PI_CPU_ENABLE_B 0x000058 /* CPU Enable B */ 63 #define PI_NMI_A 0x000070 /* NMI to CPU A */ 64 #define PI_NMI_B 0x000078 /* NMI to CPU B */ [all …]
|
| /kernel/linux/linux-5.10/arch/mips/include/asm/sn/sn0/ |
| D | hubpi.h | 8 * Copyright (C) 1992 - 1997, 1999 Silicon Graphics, Inc. 28 #define PI_CPU_PROTECT 0x000000 /* CPU Protection */ 29 #define PI_PROT_OVERRD 0x000008 /* Clear CPU Protection bit */ 32 #define PI_CPU_NUM 0x000020 /* CPU Number ID */ 57 #define PI_CPU_PRESENT_A 0x000040 /* CPU Present A */ 58 #define PI_CPU_PRESENT_B 0x000048 /* CPU Present B */ 59 #define PI_CPU_ENABLE_A 0x000050 /* CPU Enable A */ 60 #define PI_CPU_ENABLE_B 0x000058 /* CPU Enable B */ 63 #define PI_NMI_A 0x000070 /* NMI to CPU A */ 64 #define PI_NMI_B 0x000078 /* NMI to CPU B */ [all …]
|