diff options
Diffstat (limited to 'tools/perf/builtin-record.c')
-rw-r--r-- | tools/perf/builtin-record.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/tools/perf/builtin-record.c b/tools/perf/builtin-record.c index 024e1441d76b..b34de9291c27 100644 --- a/tools/perf/builtin-record.c +++ b/tools/perf/builtin-record.c | |||
@@ -36,6 +36,7 @@ static int *fd[MAX_NR_CPUS][MAX_COUNTERS]; | |||
36 | 36 | ||
37 | static u64 user_interval = ULLONG_MAX; | 37 | static u64 user_interval = ULLONG_MAX; |
38 | static u64 default_interval = 0; | 38 | static u64 default_interval = 0; |
39 | static u64 sample_type; | ||
39 | 40 | ||
40 | static int nr_cpus = 0; | 41 | static int nr_cpus = 0; |
41 | static unsigned int page_size; | 42 | static unsigned int page_size; |
@@ -129,6 +130,7 @@ static void write_output(void *buf, size_t size) | |||
129 | } | 130 | } |
130 | 131 | ||
131 | static int process_synthesized_event(event_t *event, | 132 | static int process_synthesized_event(event_t *event, |
133 | struct sample_data *sample __used, | ||
132 | struct perf_session *self __used) | 134 | struct perf_session *self __used) |
133 | { | 135 | { |
134 | write_output(event, event->header.size); | 136 | write_output(event, event->header.size); |
@@ -287,6 +289,9 @@ static void create_counter(int counter, int cpu) | |||
287 | attr->sample_type |= PERF_SAMPLE_CPU; | 289 | attr->sample_type |= PERF_SAMPLE_CPU; |
288 | } | 290 | } |
289 | 291 | ||
292 | if (!sample_type) | ||
293 | sample_type = attr->sample_type; | ||
294 | |||
290 | attr->mmap = track; | 295 | attr->mmap = track; |
291 | attr->comm = track; | 296 | attr->comm = track; |
292 | attr->inherit = !no_inherit; | 297 | attr->inherit = !no_inherit; |
@@ -642,6 +647,8 @@ static int __cmd_record(int argc, const char **argv) | |||
642 | open_counters(cpumap[i]); | 647 | open_counters(cpumap[i]); |
643 | } | 648 | } |
644 | 649 | ||
650 | perf_session__set_sample_type(session, sample_type); | ||
651 | |||
645 | if (pipe_output) { | 652 | if (pipe_output) { |
646 | err = perf_header__write_pipe(output); | 653 | err = perf_header__write_pipe(output); |
647 | if (err < 0) | 654 | if (err < 0) |