aboutsummaryrefslogtreecommitdiffstats
path: root/include/uapi/linux/perf_event.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/uapi/linux/perf_event.h')
-rw-r--r--include/uapi/linux/perf_event.h7
1 files changed, 5 insertions, 2 deletions
diff --git a/include/uapi/linux/perf_event.h b/include/uapi/linux/perf_event.h
index 2881145cda86..d801bb0d9f6d 100644
--- a/include/uapi/linux/perf_event.h
+++ b/include/uapi/linux/perf_event.h
@@ -110,6 +110,7 @@ enum perf_sw_ids {
110 PERF_COUNT_SW_ALIGNMENT_FAULTS = 7, 110 PERF_COUNT_SW_ALIGNMENT_FAULTS = 7,
111 PERF_COUNT_SW_EMULATION_FAULTS = 8, 111 PERF_COUNT_SW_EMULATION_FAULTS = 8,
112 PERF_COUNT_SW_DUMMY = 9, 112 PERF_COUNT_SW_DUMMY = 9,
113 PERF_COUNT_SW_BPF_OUTPUT = 10,
113 114
114 PERF_COUNT_SW_MAX, /* non-ABI */ 115 PERF_COUNT_SW_MAX, /* non-ABI */
115}; 116};
@@ -168,6 +169,7 @@ enum perf_branch_sample_type_shift {
168 169
169 PERF_SAMPLE_BRANCH_CALL_STACK_SHIFT = 11, /* call/ret stack */ 170 PERF_SAMPLE_BRANCH_CALL_STACK_SHIFT = 11, /* call/ret stack */
170 PERF_SAMPLE_BRANCH_IND_JUMP_SHIFT = 12, /* indirect jumps */ 171 PERF_SAMPLE_BRANCH_IND_JUMP_SHIFT = 12, /* indirect jumps */
172 PERF_SAMPLE_BRANCH_CALL_SHIFT = 13, /* direct call */
171 173
172 PERF_SAMPLE_BRANCH_MAX_SHIFT /* non-ABI */ 174 PERF_SAMPLE_BRANCH_MAX_SHIFT /* non-ABI */
173}; 175};
@@ -188,6 +190,7 @@ enum perf_branch_sample_type {
188 190
189 PERF_SAMPLE_BRANCH_CALL_STACK = 1U << PERF_SAMPLE_BRANCH_CALL_STACK_SHIFT, 191 PERF_SAMPLE_BRANCH_CALL_STACK = 1U << PERF_SAMPLE_BRANCH_CALL_STACK_SHIFT,
190 PERF_SAMPLE_BRANCH_IND_JUMP = 1U << PERF_SAMPLE_BRANCH_IND_JUMP_SHIFT, 192 PERF_SAMPLE_BRANCH_IND_JUMP = 1U << PERF_SAMPLE_BRANCH_IND_JUMP_SHIFT,
193 PERF_SAMPLE_BRANCH_CALL = 1U << PERF_SAMPLE_BRANCH_CALL_SHIFT,
191 194
192 PERF_SAMPLE_BRANCH_MAX = 1U << PERF_SAMPLE_BRANCH_MAX_SHIFT, 195 PERF_SAMPLE_BRANCH_MAX = 1U << PERF_SAMPLE_BRANCH_MAX_SHIFT,
193}; 196};
@@ -476,7 +479,7 @@ struct perf_event_mmap_page {
476 * u64 delta; 479 * u64 delta;
477 * 480 *
478 * quot = (cyc >> time_shift); 481 * quot = (cyc >> time_shift);
479 * rem = cyc & ((1 << time_shift) - 1); 482 * rem = cyc & (((u64)1 << time_shift) - 1);
480 * delta = time_offset + quot * time_mult + 483 * delta = time_offset + quot * time_mult +
481 * ((rem * time_mult) >> time_shift); 484 * ((rem * time_mult) >> time_shift);
482 * 485 *
@@ -507,7 +510,7 @@ struct perf_event_mmap_page {
507 * And vice versa: 510 * And vice versa:
508 * 511 *
509 * quot = cyc >> time_shift; 512 * quot = cyc >> time_shift;
510 * rem = cyc & ((1 << time_shift) - 1); 513 * rem = cyc & (((u64)1 << time_shift) - 1);
511 * timestamp = time_zero + quot * time_mult + 514 * timestamp = time_zero + quot * time_mult +
512 * ((rem * time_mult) >> time_shift); 515 * ((rem * time_mult) >> time_shift);
513 */ 516 */