aboutsummaryrefslogtreecommitdiffstats
path: root/tools/perf/builtin-diff.c
diff options
context:
space:
mode:
authorEric B Munson <ebmunson@us.ibm.com>2010-03-05 10:51:08 -0500
committerIngo Molnar <mingo@elte.hu>2010-03-10 07:53:49 -0500
commiteefc465cdd49cb89a742083fac2807c718ddad31 (patch)
tree9b16f03050d831ab357b2d0e40f694369135e787 /tools/perf/builtin-diff.c
parentcb8f09393646c5058056db771583c86e0ed1d92f (diff)
perf session: Change perf_session post processing functions to take histogram tree
Now that report can store historgrams for multiple events we need to be able to do the post processing work for each histogram. This patch changes the post processing functions so that they can be called individually for each event's histogram. Signed-off-by: Eric B Munson <ebmunson@us.ibm.com> [ Guarantee bisectabilty by fixing up builtin-report.c ] Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com> Cc: Peter Zijlstra <a.p.zijlstra@chello.nl> Cc: Paul Mackerras <paulus@samba.org> LKML-Reference: <1267804269-22660-5-git-send-email-acme@infradead.org> Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'tools/perf/builtin-diff.c')
-rw-r--r--tools/perf/builtin-diff.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/tools/perf/builtin-diff.c b/tools/perf/builtin-diff.c
index 20df7352629b..1ea15d8aeed1 100644
--- a/tools/perf/builtin-diff.c
+++ b/tools/perf/builtin-diff.c
@@ -115,7 +115,7 @@ static void perf_session__resort_hist_entries(struct perf_session *self)
115 115
116static void perf_session__set_hist_entries_positions(struct perf_session *self) 116static void perf_session__set_hist_entries_positions(struct perf_session *self)
117{ 117{
118 perf_session__output_resort(self, self->events_stats.total); 118 perf_session__output_resort(&self->hists, self->events_stats.total);
119 perf_session__resort_hist_entries(self); 119 perf_session__resort_hist_entries(self);
120} 120}
121 121
@@ -167,13 +167,15 @@ static int __cmd_diff(void)
167 goto out_delete; 167 goto out_delete;
168 } 168 }
169 169
170 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);
171 if (show_displacement) 172 if (show_displacement)
172 perf_session__set_hist_entries_positions(session[0]); 173 perf_session__set_hist_entries_positions(session[0]);
173 174
174 perf_session__match_hists(session[0], session[1]); 175 perf_session__match_hists(session[0], session[1]);
175 perf_session__fprintf_hists(session[1], session[0], 176 perf_session__fprintf_hists(&session[1]->hists, session[0],
176 show_displacement, stdout); 177 show_displacement, stdout,
178 session[1]->events_stats.total);
177out_delete: 179out_delete:
178 for (i = 0; i < 2; ++i) 180 for (i = 0; i < 2; ++i)
179 perf_session__delete(session[i]); 181 perf_session__delete(session[i]);