Messages in this thread | | | Date | Thu, 6 Dec 2012 16:09:20 -0300 | From | Arnaldo Carvalho de Melo <> | Subject | Re: [PATCH 2/5] perf hists: Exchange order of comparing items when collapsing hists |
| |
Em Thu, Dec 06, 2012 at 05:53:25PM +0100, Jiri Olsa escreveu: > On Fri, Dec 07, 2012 at 12:09:38AM +0900, Namhyung Kim wrote: > > From: Namhyung Kim <namhyung.kim@lge.com> > > > > When comparing entries for collapsing put the given entry first, and > > then the iterated entry. This is not the case of hist_entry__cmp() > > when called if given sort keys don't require collapsing. So change > > the order for the sake of consistency. It will be required for > > matching and/or linking multiple hist entries. > > As discussed with Arnadlo, this change seems like changing the > sort order... could you ellaborate how it is usefull in future?
In several places the order is (he, iter) then it became (iter, he), something like that, so he inverted it for consistency, but then he needs to invert in the cmp function too, unsure if this is worth the trouble now, perhaps some comment placed in the right spot clarifies things,
- Arnaldo
> thanks, > jirka > > > > > Cc: Jiri Olsa <jolsa@redhat.com> > > Cc: Stephane Eranian <eranian@google.com> > > Signed-off-by: Namhyung Kim <namhyung@kernel.org> > > --- > > tools/perf/util/hist.c | 6 +++--- > > 1 file changed, 3 insertions(+), 3 deletions(-) > > > > diff --git a/tools/perf/util/hist.c b/tools/perf/util/hist.c > > index 82df1b26f0d4..d4471c21ed17 100644 > > --- a/tools/perf/util/hist.c > > +++ b/tools/perf/util/hist.c > > @@ -285,7 +285,7 @@ static struct hist_entry *add_hist_entry(struct hists *hists, > > parent = *p; > > he = rb_entry(parent, struct hist_entry, rb_node_in); > > > > - cmp = hist_entry__cmp(entry, he); > > + cmp = hist_entry__cmp(he, entry); > > > > if (!cmp) { > > he_stat__add_period(&he->stat, period); > > @@ -729,7 +729,7 @@ static struct hist_entry *hists__add_dummy_entry(struct hists *hists, > > parent = *p; > > he = rb_entry(parent, struct hist_entry, rb_node); > > > > - cmp = hist_entry__cmp(pair, he); > > + cmp = hist_entry__cmp(he, pair); > > > > if (!cmp) > > goto out; > > @@ -759,7 +759,7 @@ static struct hist_entry *hists__find_entry(struct hists *hists, > > > > while (n) { > > struct hist_entry *iter = rb_entry(n, struct hist_entry, rb_node); > > - int64_t cmp = hist_entry__cmp(he, iter); > > + int64_t cmp = hist_entry__cmp(iter, he); > > > > if (cmp < 0) > > n = n->rb_left; > > -- > > 1.7.9.2 > >
| |