lkml.org 
[lkml]   [2012]   [Dec]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [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
> >


\
 
 \ /
  Last update: 2012-12-06 21:01    [W:0.070 / U:0.264 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site