Lines Matching +full:remote +full:- +full:pid
1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
5 * Copyright (C) 2008-2009, Thomas Gleixner <tglx@linutronix.de>
6 * Copyright (C) 2008-2011, Red Hat, Inc., Ingo Molnar
7 * Copyright (C) 2008-2011, Red Hat, Inc., Peter Zijlstra
13 * For licencing details see kernel-base/COPYING
23 * User-space ABI bits:
37 PERF_TYPE_MAX, /* non-ABI */
75 PERF_COUNT_HW_MAX, /* non-ABI */
81 * { L1-D, L1-I, LLC, ITLB, DTLB, BPU, NODE } x
94 PERF_COUNT_HW_CACHE_MAX, /* non-ABI */
102 PERF_COUNT_HW_CACHE_OP_MAX, /* non-ABI */
109 PERF_COUNT_HW_CACHE_RESULT_MAX, /* non-ABI */
132 PERF_COUNT_SW_MAX, /* non-ABI */
166 PERF_SAMPLE_MAX = 1U << 25, /* non-ABI */
209 PERF_SAMPLE_BRANCH_MAX_SHIFT /* non-ABI */
274 PERF_BR_NON_SPEC_CORRECT_PATH = 2, /* Non-speculative but on correct path */
332 PERF_TXN_MAX = (1 << 8), /* non-ABI */
369 PERF_FORMAT_MAX = 1U << 5, /* non-ABI */
434 * 0 - SAMPLE_IP can have arbitrary skid
435 * 1 - SAMPLE_IP must have constant skid
436 * 2 - SAMPLE_IP requested to have 0 skid
437 * 3 - SAMPLE_IP must have 0 skid
442 mmap_data : 1, /* non-exec mmap data */
502 * - precise = 0: PMU interrupt
503 * - precise > 0: sampled instruction
530 * Note, siginfo_t::si_perf_data is long-sized, and sig_data will be
587 * Bits needed to read the hw events in user-space.
595 * seq = pc->lock;
598 * enabled = pc->time_enabled;
599 * running = pc->time_running;
601 * if (pc->cap_usr_time && enabled != running) {
603 * time_offset = pc->time_offset;
604 * time_mult = pc->time_mult;
605 * time_shift = pc->time_shift;
608 * index = pc->index;
609 * count = pc->offset;
610 * if (pc->cap_user_rdpmc && index) {
611 * width = pc->pmc_width;
612 * pmc = rdpmc(index - 1);
616 * } while (pc->lock != seq);
618 * NOTE: for obvious reason this only works on self-monitoring
641 * If cap_user_rdpmc this field provides the bit-width of the value
645 * pmc <<= 64 - width;
646 * pmc >>= 64 - width; // signed shift right
659 * rem = cyc & (((u64)1 << time_shift) - 1);
682 * time = timestamp - time_zero;
690 * rem = cyc & (((u64)1 << time_shift) - 1);
703 * cyc = time_cycles + ((cyc - time_cycles) & time_mask)
722 * User-space reading the @data_head value should issue an smp_rmb(),
727 * an smp_mb() to separate the data read from the ->data_tail store.
728 * In this case the kernel will not over-write unread data.
736 __u64 data_tail; /* user-space written tail */
759 * ('|' used bit, '-' unused bit)
762 * |||---------||||
765 * 0-2 CPUMODE_MASK
782 * Indicates that /proc/PID/maps parsing are truncated by time out.
789 * PERF_RECORD_MISC_MMAP_DATA - PERF_RECORD_MMAP* events
790 * PERF_RECORD_MISC_COMM_EXEC - PERF_RECORD_COMM event
791 * PERF_RECORD_MISC_FORK_EXEC - PERF_RECORD_FORK event (perf internal)
792 * PERF_RECORD_MISC_SWITCH_OUT - PERF_RECORD_SWITCH* events
802 * PERF_RECORD_MISC_EXACT_IP - PERF_RECORD_SAMPLE of precise events
803 * PERF_RECORD_MISC_SWITCH_OUT_PREEMPT - PERF_RECORD_SWITCH* events
804 * PERF_RECORD_MISC_MMAP_BUILD_ID - PERF_RECORD_MMAP2 event
862 * { u32 pid, tid; } && PERF_SAMPLE_TID
882 * u32 pid, tid;
906 * u32 pid, tid;
916 * u32 pid, ppid;
939 * u32 pid, ppid;
950 * u32 pid, tid;
970 * { u32 pid, tid; } && PERF_SAMPLE_TID
1053 * u32 pid, tid;
1097 * u32 pid;
1129 * CPU-wide version of PERF_RECORD_SWITCH with next_prev_pid and
1131 * (switching in) pid/tid.
1145 * u32 pid;
1199 * Records changes to kernel text i.e. self-modified code. 'old_len' is
1218 * to be matched to the event by an architecture-specific hardware ID.
1220 * event ID. e.g. Intel PT uses this record to disambiguate PEBS-via-PT
1231 PERF_RECORD_MAX, /* non-ABI */
1238 * Out of line code such as kprobe-replaced instructions or optimized
1242 PERF_RECORD_KSYMBOL_TYPE_MAX /* non-ABI */
1251 PERF_BPF_EVENT_MAX, /* non-ABI */
1258 PERF_CONTEXT_HV = (__u64)-32,
1259 PERF_CONTEXT_KERNEL = (__u64)-128,
1260 PERF_CONTEXT_USER = (__u64)-512,
1262 PERF_CONTEXT_GUEST = (__u64)-2048,
1263 PERF_CONTEXT_GUEST_KERNEL = (__u64)-2176,
1264 PERF_CONTEXT_GUEST_USER = (__u64)-2560,
1266 PERF_CONTEXT_MAX = (__u64)-4095,
1284 #define PERF_FLAG_PID_CGROUP (1UL << 2) /* pid=cgroup id, per-cpu mode only */
1297 mem_remote:1, /* remote */
1312 mem_remote:1, /* remote */
1348 #define PERF_MEM_LVL_REM_RAM1 0x100 /* Remote DRAM (1 hop) */
1349 #define PERF_MEM_LVL_REM_RAM2 0x200 /* Remote DRAM (2 hops) */
1350 #define PERF_MEM_LVL_REM_CCE1 0x400 /* Remote Cache (1 hop) */
1351 #define PERF_MEM_LVL_REM_CCE2 0x800 /* Remote Cache (2 hops) */
1356 #define PERF_MEM_REMOTE_REMOTE 0x01 /* Remote */
1364 #define PERF_MEM_LVLNUM_MSC 0x06 /* Memory-side Cache */
1411 #define PERF_MEM_HOPS_0 0x01 /* remote core, same node */
1412 #define PERF_MEM_HOPS_1 0x02 /* remote node, same socket */
1413 #define PERF_MEM_HOPS_2 0x03 /* remote socket, same board */
1414 #define PERF_MEM_HOPS_3 0x04 /* remote board */
1415 /* 5-7 available */