diff options
author | Ingo Molnar <mingo@kernel.org> | 2013-04-01 15:41:35 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@kernel.org> | 2013-04-01 15:41:35 -0400 |
commit | b847d0501afec4c7b12eb276aec10a2834f953ea (patch) | |
tree | 69ff786e4280456345a03de9f70f85baf0e34d66 /include/linux | |
parent | 0a11953851213fd1d3eebcb68b4a537d458c70c2 (diff) | |
parent | d06f7911792780c6e973a137b766530c8d031aeb (diff) |
Merge tag 'perf-core-for-mingo' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/core
Pull perf/core improvements and fixes from Arnaldo Carvalho de Melo:
* Revert "perf sched: Handle PERF_RECORD_EXIT events" to get 'perf sched lat'
back working.
* We don't use Newt anymore, just plain libslang.
* Kill a bunch of die() calls, from Namhyung Kim.
* Add --no-demangle to report/top, from Namhyung Kim.
* Fix dependency of the python binding wrt libtraceevent, from Naohiro Aota.
* Introduce per core aggregation in 'perf stat', from Stephane Eranian.
* Add memory profiling via PEBS, from Stephane Eranian.
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'include/linux')
-rw-r--r-- | include/linux/perf_event.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/include/linux/perf_event.h b/include/linux/perf_event.h index 8737e1cee8b2..42a6daaf4e0a 100644 --- a/include/linux/perf_event.h +++ b/include/linux/perf_event.h | |||
@@ -127,6 +127,7 @@ struct hw_perf_event { | |||
127 | int event_base_rdpmc; | 127 | int event_base_rdpmc; |
128 | int idx; | 128 | int idx; |
129 | int last_cpu; | 129 | int last_cpu; |
130 | int flags; | ||
130 | 131 | ||
131 | struct hw_perf_event_extra extra_reg; | 132 | struct hw_perf_event_extra extra_reg; |
132 | struct hw_perf_event_extra branch_reg; | 133 | struct hw_perf_event_extra branch_reg; |
@@ -567,11 +568,13 @@ struct perf_sample_data { | |||
567 | u32 reserved; | 568 | u32 reserved; |
568 | } cpu_entry; | 569 | } cpu_entry; |
569 | u64 period; | 570 | u64 period; |
571 | union perf_mem_data_src data_src; | ||
570 | struct perf_callchain_entry *callchain; | 572 | struct perf_callchain_entry *callchain; |
571 | struct perf_raw_record *raw; | 573 | struct perf_raw_record *raw; |
572 | struct perf_branch_stack *br_stack; | 574 | struct perf_branch_stack *br_stack; |
573 | struct perf_regs_user regs_user; | 575 | struct perf_regs_user regs_user; |
574 | u64 stack_user_size; | 576 | u64 stack_user_size; |
577 | u64 weight; | ||
575 | }; | 578 | }; |
576 | 579 | ||
577 | static inline void perf_sample_data_init(struct perf_sample_data *data, | 580 | static inline void perf_sample_data_init(struct perf_sample_data *data, |
@@ -585,6 +588,8 @@ static inline void perf_sample_data_init(struct perf_sample_data *data, | |||
585 | data->regs_user.abi = PERF_SAMPLE_REGS_ABI_NONE; | 588 | data->regs_user.abi = PERF_SAMPLE_REGS_ABI_NONE; |
586 | data->regs_user.regs = NULL; | 589 | data->regs_user.regs = NULL; |
587 | data->stack_user_size = 0; | 590 | data->stack_user_size = 0; |
591 | data->weight = 0; | ||
592 | data->data_src.val = 0; | ||
588 | } | 593 | } |
589 | 594 | ||
590 | extern void perf_output_sample(struct perf_output_handle *handle, | 595 | extern void perf_output_sample(struct perf_output_handle *handle, |
@@ -809,6 +814,7 @@ do { \ | |||
809 | struct perf_pmu_events_attr { | 814 | struct perf_pmu_events_attr { |
810 | struct device_attribute attr; | 815 | struct device_attribute attr; |
811 | u64 id; | 816 | u64 id; |
817 | const char *event_str; | ||
812 | }; | 818 | }; |
813 | 819 | ||
814 | #define PMU_EVENT_ATTR(_name, _var, _id, _show) \ | 820 | #define PMU_EVENT_ATTR(_name, _var, _id, _show) \ |