diff options
Diffstat (limited to 'include/uapi/linux/perf_event.h')
-rw-r--r-- | include/uapi/linux/perf_event.h | 7 |
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 | */ |