tools headers uapi: Sync tools/include/uapi/linux/perf_event.h
Syncing tools's uapi with mmap2 build id data changes. Committer notes: I'm taking the tools/ bits, so this will be in fact ahead of the kernel till the bpf/perf-kernel bits are merged. Signed-off-by: Jiri Olsa <jolsa@kernel.org> Acked-by: Namhyung Kim <namhyung@kernel.org> Cc: Adrian Hunter <adrian.hunter@intel.com> Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com> Cc: Alexei Budankov <abudankov@huawei.com> Cc: Andi Kleen <ak@linux.intel.com> Cc: Ian Rogers <irogers@google.com> Cc: Mark Rutland <mark.rutland@arm.com> Cc: Michael Petlan <mpetlan@redhat.com> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Song Liu <songliubraving@fb.com> Cc: Stephane Eranian <eranian@google.com> Link: http://lore.kernel.org/lkml/20201214105457.543111-5-jolsa@kernel.org Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:
Родитель
feab999efe
Коммит
dde587aa21
|
@ -386,7 +386,8 @@ struct perf_event_attr {
|
|||
aux_output : 1, /* generate AUX records instead of events */
|
||||
cgroup : 1, /* include cgroup events */
|
||||
text_poke : 1, /* include text poke events */
|
||||
__reserved_1 : 30;
|
||||
build_id : 1, /* use build id in mmap2 events */
|
||||
__reserved_1 : 29;
|
||||
|
||||
union {
|
||||
__u32 wakeup_events; /* wakeup every n events */
|
||||
|
@ -659,6 +660,22 @@ struct perf_event_mmap_page {
|
|||
__u64 aux_size;
|
||||
};
|
||||
|
||||
/*
|
||||
* The current state of perf_event_header::misc bits usage:
|
||||
* ('|' used bit, '-' unused bit)
|
||||
*
|
||||
* 012 CDEF
|
||||
* |||---------||||
|
||||
*
|
||||
* Where:
|
||||
* 0-2 CPUMODE_MASK
|
||||
*
|
||||
* C PROC_MAP_PARSE_TIMEOUT
|
||||
* D MMAP_DATA / COMM_EXEC / FORK_EXEC / SWITCH_OUT
|
||||
* E MMAP_BUILD_ID / EXACT_IP / SCHED_OUT_PREEMPT
|
||||
* F (reserved)
|
||||
*/
|
||||
|
||||
#define PERF_RECORD_MISC_CPUMODE_MASK (7 << 0)
|
||||
#define PERF_RECORD_MISC_CPUMODE_UNKNOWN (0 << 0)
|
||||
#define PERF_RECORD_MISC_KERNEL (1 << 0)
|
||||
|
@ -690,6 +707,7 @@ struct perf_event_mmap_page {
|
|||
*
|
||||
* PERF_RECORD_MISC_EXACT_IP - PERF_RECORD_SAMPLE of precise events
|
||||
* PERF_RECORD_MISC_SWITCH_OUT_PREEMPT - PERF_RECORD_SWITCH* events
|
||||
* PERF_RECORD_MISC_MMAP_BUILD_ID - PERF_RECORD_MMAP2 event
|
||||
*
|
||||
*
|
||||
* PERF_RECORD_MISC_EXACT_IP:
|
||||
|
@ -699,9 +717,13 @@ struct perf_event_mmap_page {
|
|||
*
|
||||
* PERF_RECORD_MISC_SWITCH_OUT_PREEMPT:
|
||||
* Indicates that thread was preempted in TASK_RUNNING state.
|
||||
*
|
||||
* PERF_RECORD_MISC_MMAP_BUILD_ID:
|
||||
* Indicates that mmap2 event carries build id data.
|
||||
*/
|
||||
#define PERF_RECORD_MISC_EXACT_IP (1 << 14)
|
||||
#define PERF_RECORD_MISC_SWITCH_OUT_PREEMPT (1 << 14)
|
||||
#define PERF_RECORD_MISC_MMAP_BUILD_ID (1 << 14)
|
||||
/*
|
||||
* Reserve the last bit to indicate some extended misc field
|
||||
*/
|
||||
|
@ -915,10 +937,20 @@ enum perf_event_type {
|
|||
* u64 addr;
|
||||
* u64 len;
|
||||
* u64 pgoff;
|
||||
* u32 maj;
|
||||
* u32 min;
|
||||
* u64 ino;
|
||||
* u64 ino_generation;
|
||||
* union {
|
||||
* struct {
|
||||
* u32 maj;
|
||||
* u32 min;
|
||||
* u64 ino;
|
||||
* u64 ino_generation;
|
||||
* };
|
||||
* struct {
|
||||
* u8 build_id_size;
|
||||
* u8 __reserved_1;
|
||||
* u16 __reserved_2;
|
||||
* u8 build_id[20];
|
||||
* };
|
||||
* };
|
||||
* u32 prot, flags;
|
||||
* char filename[];
|
||||
* struct sample_id sample_id;
|
||||
|
|
Загрузка…
Ссылка в новой задаче