aboutsummaryrefslogtreecommitdiffstats
path: root/include/uapi
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2014-06-12 22:18:49 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2014-06-12 22:18:49 -0400
commit3737a12761636ebde0f09ef49daebb8eed18cc8a (patch)
tree965057f4bccd97049f8c0140f8670c5d4278ca3e /include/uapi
parentc29deef32e3699e40da3e9e82267610de04e6b54 (diff)
parent82b897782d10fcc4930c9d4a15b175348fdd2871 (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.h12
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