diff options
| author | Linus Torvalds <torvalds@linux-foundation.org> | 2014-06-12 22:18:49 -0400 |
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2014-06-12 22:18:49 -0400 |
| commit | 3737a12761636ebde0f09ef49daebb8eed18cc8a (patch) | |
| tree | 965057f4bccd97049f8c0140f8670c5d4278ca3e /include/uapi | |
| parent | c29deef32e3699e40da3e9e82267610de04e6b54 (diff) | |
| parent | 82b897782d10fcc4930c9d4a15b175348fdd2871 (diff) | |
Merge branch 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull more perf updates from Ingo Molnar:
"A second round of perf updates:
- wide reaching kprobes sanitization and robustization, with the hope
of fixing all 'probe this function crashes the kernel' bugs, by
Masami Hiramatsu.
- uprobes updates from Oleg Nesterov: tmpfs support, corner case
fixes and robustization work.
- perf tooling updates and fixes from Jiri Olsa, Namhyung Ki, Arnaldo
et al:
* Add support to accumulate hist periods (Namhyung Kim)
* various fixes, refactorings and enhancements"
* 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (101 commits)
perf: Differentiate exec() and non-exec() comm events
perf: Fix perf_event_comm() vs. exec() assumption
uprobes/x86: Rename arch_uprobe->def to ->defparam, minor comment updates
perf/documentation: Add description for conditional branch filter
perf/x86: Add conditional branch filtering support
perf/tool: Add conditional branch filter 'cond' to perf record
perf: Add new conditional branch filter 'PERF_SAMPLE_BRANCH_COND'
uprobes: Teach copy_insn() to support tmpfs
uprobes: Shift ->readpage check from __copy_insn() to uprobe_register()
perf/x86: Use common PMU interrupt disabled code
perf/ARM: Use common PMU interrupt disabled code
perf: Disable sampled events if no PMU interrupt
perf: Fix use after free in perf_remove_from_context()
perf tools: Fix 'make help' message error
perf record: Fix poll return value propagation
perf tools: Move elide bool into perf_hpp_fmt struct
perf tools: Remove elide setup for SORT_MODE__MEMORY mode
perf tools: Fix "==" into "=" in ui_browser__warning assignment
perf tools: Allow overriding sysfs and proc finding with env var
perf tools: Consider header files outside perf directory in tags target
...
Diffstat (limited to 'include/uapi')
| -rw-r--r-- | include/uapi/linux/perf_event.h | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/include/uapi/linux/perf_event.h b/include/uapi/linux/perf_event.h index e3fc8f09d110..5312fae47218 100644 --- a/include/uapi/linux/perf_event.h +++ b/include/uapi/linux/perf_event.h | |||
| @@ -163,8 +163,9 @@ enum perf_branch_sample_type { | |||
| 163 | PERF_SAMPLE_BRANCH_ABORT_TX = 1U << 7, /* transaction aborts */ | 163 | PERF_SAMPLE_BRANCH_ABORT_TX = 1U << 7, /* transaction aborts */ |
| 164 | PERF_SAMPLE_BRANCH_IN_TX = 1U << 8, /* in transaction */ | 164 | PERF_SAMPLE_BRANCH_IN_TX = 1U << 8, /* in transaction */ |
| 165 | PERF_SAMPLE_BRANCH_NO_TX = 1U << 9, /* not in transaction */ | 165 | PERF_SAMPLE_BRANCH_NO_TX = 1U << 9, /* not in transaction */ |
| 166 | PERF_SAMPLE_BRANCH_COND = 1U << 10, /* conditional branches */ | ||
| 166 | 167 | ||
| 167 | PERF_SAMPLE_BRANCH_MAX = 1U << 10, /* non-ABI */ | 168 | PERF_SAMPLE_BRANCH_MAX = 1U << 11, /* non-ABI */ |
| 168 | }; | 169 | }; |
| 169 | 170 | ||
| 170 | #define PERF_SAMPLE_BRANCH_PLM_ALL \ | 171 | #define PERF_SAMPLE_BRANCH_PLM_ALL \ |
| @@ -301,8 +302,8 @@ struct perf_event_attr { | |||
| 301 | exclude_callchain_kernel : 1, /* exclude kernel callchains */ | 302 | exclude_callchain_kernel : 1, /* exclude kernel callchains */ |
| 302 | exclude_callchain_user : 1, /* exclude user callchains */ | 303 | exclude_callchain_user : 1, /* exclude user callchains */ |
| 303 | mmap2 : 1, /* include mmap with inode data */ | 304 | mmap2 : 1, /* include mmap with inode data */ |
| 304 | 305 | comm_exec : 1, /* flag comm events that are due to an exec */ | |
| 305 | __reserved_1 : 40; | 306 | __reserved_1 : 39; |
| 306 | 307 | ||
| 307 | union { | 308 | union { |
| 308 | __u32 wakeup_events; /* wakeup every n events */ | 309 | __u32 wakeup_events; /* wakeup every n events */ |
| @@ -501,7 +502,12 @@ struct perf_event_mmap_page { | |||
| 501 | #define PERF_RECORD_MISC_GUEST_KERNEL (4 << 0) | 502 | #define PERF_RECORD_MISC_GUEST_KERNEL (4 << 0) |
| 502 | #define PERF_RECORD_MISC_GUEST_USER (5 << 0) | 503 | #define PERF_RECORD_MISC_GUEST_USER (5 << 0) |
| 503 | 504 | ||
| 505 | /* | ||
| 506 | * PERF_RECORD_MISC_MMAP_DATA and PERF_RECORD_MISC_COMM_EXEC are used on | ||
| 507 | * different events so can reuse the same bit position. | ||
| 508 | */ | ||
| 504 | #define PERF_RECORD_MISC_MMAP_DATA (1 << 13) | 509 | #define PERF_RECORD_MISC_MMAP_DATA (1 << 13) |
| 510 | #define PERF_RECORD_MISC_COMM_EXEC (1 << 13) | ||
| 505 | /* | 511 | /* |
| 506 | * Indicates that the content of PERF_SAMPLE_IP points to | 512 | * Indicates that the content of PERF_SAMPLE_IP points to |
| 507 | * the actual instruction that triggered the event. See also | 513 | * the actual instruction that triggered the event. See also |
