diff options
| author | Linus Torvalds <torvalds@linux-foundation.org> | 2010-03-18 19:52:46 -0400 |
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2010-03-18 19:52:46 -0400 |
| commit | f82c37e7bb4c4d9b6a476c642d5c2d2efbd6f240 (patch) | |
| tree | 09fc553c2fb6f527962048d139159dc139e04afc /tools/perf/builtin-diff.c | |
| parent | c6b9e73f2fee8bb86058f296de808b326473456b (diff) | |
| parent | dcd5c1662db59a6b82942f47fb6ac9dd63f6d3dd (diff) | |
Merge branch 'perf-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
* 'perf-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (35 commits)
perf: Fix unexported generic perf_arch_fetch_caller_regs
perf record: Don't try to find buildids in a zero sized file
perf: export perf_trace_regs and perf_arch_fetch_caller_regs
perf, x86: Fix hw_perf_enable() event assignment
perf, ppc: Fix compile error due to new cpu notifiers
perf: Make the install relative to DESTDIR if specified
kprobes: Calculate the index correctly when freeing the out-of-line execution slot
perf tools: Fix sparse CPU numbering related bugs
perf_event: Fix oops triggered by cpu offline/online
perf: Drop the obsolete profile naming for trace events
perf: Take a hot regs snapshot for trace events
perf: Introduce new perf_fetch_caller_regs() for hot regs snapshot
perf/x86-64: Use frame pointer to walk on irq and process stacks
lockdep: Move lock events under lockdep recursion protection
perf report: Print the map table just after samples for which no map was found
perf report: Add multiple event support
perf session: Change perf_session post processing functions to take histogram tree
perf session: Add storage for seperating event types in report
perf session: Change add_hist_entry to take the tree root instead of session
perf record: Add ID and to recorded event data when recording multiple events
...
Diffstat (limited to 'tools/perf/builtin-diff.c')
| -rw-r--r-- | tools/perf/builtin-diff.c | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/tools/perf/builtin-diff.c b/tools/perf/builtin-diff.c index 18b3f505f9db..1ea15d8aeed1 100644 --- a/tools/perf/builtin-diff.c +++ b/tools/perf/builtin-diff.c | |||
| @@ -26,7 +26,8 @@ static int perf_session__add_hist_entry(struct perf_session *self, | |||
| 26 | struct addr_location *al, u64 count) | 26 | struct addr_location *al, u64 count) |
| 27 | { | 27 | { |
| 28 | bool hit; | 28 | bool hit; |
| 29 | struct hist_entry *he = __perf_session__add_hist_entry(self, al, NULL, | 29 | struct hist_entry *he = __perf_session__add_hist_entry(&self->hists, |
| 30 | al, NULL, | ||
| 30 | count, &hit); | 31 | count, &hit); |
| 31 | if (he == NULL) | 32 | if (he == NULL) |
| 32 | return -ENOMEM; | 33 | return -ENOMEM; |
| @@ -114,7 +115,7 @@ static void perf_session__resort_hist_entries(struct perf_session *self) | |||
| 114 | 115 | ||
| 115 | static void perf_session__set_hist_entries_positions(struct perf_session *self) | 116 | static void perf_session__set_hist_entries_positions(struct perf_session *self) |
| 116 | { | 117 | { |
| 117 | perf_session__output_resort(self, self->events_stats.total); | 118 | perf_session__output_resort(&self->hists, self->events_stats.total); |
| 118 | perf_session__resort_hist_entries(self); | 119 | perf_session__resort_hist_entries(self); |
| 119 | } | 120 | } |
| 120 | 121 | ||
| @@ -166,13 +167,15 @@ static int __cmd_diff(void) | |||
| 166 | goto out_delete; | 167 | goto out_delete; |
| 167 | } | 168 | } |
| 168 | 169 | ||
| 169 | perf_session__output_resort(session[1], session[1]->events_stats.total); | 170 | perf_session__output_resort(&session[1]->hists, |
| 171 | session[1]->events_stats.total); | ||
| 170 | if (show_displacement) | 172 | if (show_displacement) |
| 171 | perf_session__set_hist_entries_positions(session[0]); | 173 | perf_session__set_hist_entries_positions(session[0]); |
| 172 | 174 | ||
| 173 | perf_session__match_hists(session[0], session[1]); | 175 | perf_session__match_hists(session[0], session[1]); |
| 174 | perf_session__fprintf_hists(session[1], session[0], | 176 | perf_session__fprintf_hists(&session[1]->hists, session[0], |
| 175 | show_displacement, stdout); | 177 | show_displacement, stdout, |
| 178 | session[1]->events_stats.total); | ||
| 176 | out_delete: | 179 | out_delete: |
| 177 | for (i = 0; i < 2; ++i) | 180 | for (i = 0; i < 2; ++i) |
| 178 | perf_session__delete(session[i]); | 181 | perf_session__delete(session[i]); |
