diff options
Diffstat (limited to 'tools/perf/builtin-top.c')
-rw-r--r-- | tools/perf/builtin-top.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/tools/perf/builtin-top.c b/tools/perf/builtin-top.c index 5aa29e1e855a..0515ce9d3d3e 100644 --- a/tools/perf/builtin-top.c +++ b/tools/perf/builtin-top.c | |||
@@ -977,12 +977,12 @@ static int symbol_filter(struct map *map, struct symbol *sym) | |||
977 | } | 977 | } |
978 | 978 | ||
979 | static void event__process_sample(const event_t *self, | 979 | static void event__process_sample(const event_t *self, |
980 | struct perf_session *session, int counter) | 980 | struct sample_data *sample, |
981 | struct perf_session *session, int counter) | ||
981 | { | 982 | { |
982 | u64 ip = self->ip.ip; | 983 | u64 ip = self->ip.ip; |
983 | struct sym_entry *syme; | 984 | struct sym_entry *syme; |
984 | struct addr_location al; | 985 | struct addr_location al; |
985 | struct sample_data data; | ||
986 | struct machine *machine; | 986 | struct machine *machine; |
987 | u8 origin = self->header.misc & PERF_RECORD_MISC_CPUMODE_MASK; | 987 | u8 origin = self->header.misc & PERF_RECORD_MISC_CPUMODE_MASK; |
988 | 988 | ||
@@ -1025,9 +1025,7 @@ static void event__process_sample(const event_t *self, | |||
1025 | if (self->header.misc & PERF_RECORD_MISC_EXACT_IP) | 1025 | if (self->header.misc & PERF_RECORD_MISC_EXACT_IP) |
1026 | exact_samples++; | 1026 | exact_samples++; |
1027 | 1027 | ||
1028 | event__parse_sample(self, session->sample_type, &data); | 1028 | if (event__preprocess_sample(self, session, &al, sample, |
1029 | |||
1030 | if (event__preprocess_sample(self, session, &al, &data, | ||
1031 | symbol_filter) < 0 || | 1029 | symbol_filter) < 0 || |
1032 | al.filtered) | 1030 | al.filtered) |
1033 | return; | 1031 | return; |
@@ -1107,6 +1105,7 @@ static void perf_session__mmap_read_counter(struct perf_session *self, | |||
1107 | unsigned int head = mmap_read_head(md); | 1105 | unsigned int head = mmap_read_head(md); |
1108 | unsigned int old = md->prev; | 1106 | unsigned int old = md->prev; |
1109 | unsigned char *data = md->base + page_size; | 1107 | unsigned char *data = md->base + page_size; |
1108 | struct sample_data sample; | ||
1110 | int diff; | 1109 | int diff; |
1111 | 1110 | ||
1112 | /* | 1111 | /* |
@@ -1154,10 +1153,11 @@ static void perf_session__mmap_read_counter(struct perf_session *self, | |||
1154 | event = &event_copy; | 1153 | event = &event_copy; |
1155 | } | 1154 | } |
1156 | 1155 | ||
1156 | event__parse_sample(event, self, &sample); | ||
1157 | if (event->header.type == PERF_RECORD_SAMPLE) | 1157 | if (event->header.type == PERF_RECORD_SAMPLE) |
1158 | event__process_sample(event, self, md->counter); | 1158 | event__process_sample(event, &sample, self, md->counter); |
1159 | else | 1159 | else |
1160 | event__process(event, NULL, self); | 1160 | event__process(event, &sample, self); |
1161 | old += size; | 1161 | old += size; |
1162 | } | 1162 | } |
1163 | 1163 | ||