diff options
| author | Alexander Shishkin <alexander.shishkin@linux.intel.com> | 2015-01-14 07:18:15 -0500 |
|---|---|---|
| committer | Ingo Molnar <mingo@kernel.org> | 2015-04-02 11:14:12 -0400 |
| commit | 68db7e98c3a6ebe7284b6cf14906ed7c55f3f7f0 (patch) | |
| tree | aff39ee8c8f8703e262768397610c5949fd93f48 /include/uapi/linux | |
| parent | bed5b25ad9c8a2f5d735ef0bc746ec870c01c1b0 (diff) | |
perf: Add AUX record
When there's new data in the AUX space, output a record indicating its
offset and size and a set of flags, such as PERF_AUX_FLAG_TRUNCATED, to
mean the described data was truncated to fit in the ring buffer.
Signed-off-by: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Arnaldo Carvalho de Melo <acme@infradead.org>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: H. Peter Anvin <hpa@zytor.com>
Cc: Kaixu Xia <kaixu.xia@linaro.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Mike Galbraith <efault@gmx.de>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Robert Richter <rric@kernel.org>
Cc: Stephane Eranian <eranian@google.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: adrian.hunter@intel.com
Cc: kan.liang@intel.com
Cc: markus.t.metzger@intel.com
Cc: mathieu.poirier@linaro.org
Link: http://lkml.kernel.org/r/1421237903-181015-7-git-send-email-alexander.shishkin@linux.intel.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'include/uapi/linux')
| -rw-r--r-- | include/uapi/linux/perf_event.h | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/include/uapi/linux/perf_event.h b/include/uapi/linux/perf_event.h index 6c5013a71714..8904ad3a850b 100644 --- a/include/uapi/linux/perf_event.h +++ b/include/uapi/linux/perf_event.h | |||
| @@ -768,6 +768,20 @@ enum perf_event_type { | |||
| 768 | */ | 768 | */ |
| 769 | PERF_RECORD_MMAP2 = 10, | 769 | PERF_RECORD_MMAP2 = 10, |
| 770 | 770 | ||
| 771 | /* | ||
| 772 | * Records that new data landed in the AUX buffer part. | ||
| 773 | * | ||
| 774 | * struct { | ||
| 775 | * struct perf_event_header header; | ||
| 776 | * | ||
| 777 | * u64 aux_offset; | ||
| 778 | * u64 aux_size; | ||
| 779 | * u64 flags; | ||
| 780 | * struct sample_id sample_id; | ||
| 781 | * }; | ||
| 782 | */ | ||
| 783 | PERF_RECORD_AUX = 11, | ||
| 784 | |||
| 771 | PERF_RECORD_MAX, /* non-ABI */ | 785 | PERF_RECORD_MAX, /* non-ABI */ |
| 772 | }; | 786 | }; |
| 773 | 787 | ||
| @@ -785,6 +799,11 @@ enum perf_callchain_context { | |||
| 785 | PERF_CONTEXT_MAX = (__u64)-4095, | 799 | PERF_CONTEXT_MAX = (__u64)-4095, |
| 786 | }; | 800 | }; |
| 787 | 801 | ||
| 802 | /** | ||
| 803 | * PERF_RECORD_AUX::flags bits | ||
| 804 | */ | ||
| 805 | #define PERF_AUX_FLAG_TRUNCATED 0x01 /* record was truncated to fit */ | ||
| 806 | |||
| 788 | #define PERF_FLAG_FD_NO_GROUP (1UL << 0) | 807 | #define PERF_FLAG_FD_NO_GROUP (1UL << 0) |
| 789 | #define PERF_FLAG_FD_OUTPUT (1UL << 1) | 808 | #define PERF_FLAG_FD_OUTPUT (1UL << 1) |
| 790 | #define PERF_FLAG_PID_CGROUP (1UL << 2) /* pid=cgroup id, per-cpu mode only */ | 809 | #define PERF_FLAG_PID_CGROUP (1UL << 2) /* pid=cgroup id, per-cpu mode only */ |
