perf report/tui: Fix a bug when --fields/sort is given
authorNamhyung Kim <namhyung@kernel.org>
Wed, 16 Apr 2014 02:16:33 +0000 (11:16 +0900)
committerJiri Olsa <jolsa@kernel.org>
Wed, 21 May 2014 09:45:36 +0000 (11:45 +0200)
The hists__filter_entries() function is called when down arrow key is
pressed for navigating through the entries in TUI.  It has a check for
filtering out entries that have very small overhead (under min_pcnt).

However it just assumed the entries are sorted by the overhead so when
it saw such a small overheaded entry, it just stopped navigating as an
optimization.  But it's not true anymore due to new --fields and
--sort optoin behavior and this case users cannot go down to a next
entry if ther's an entry with small overhead in-between.

Signed-off-by: Namhyung Kim <namhyung@kernel.org>
Link: http://lkml.kernel.org/r/1400480762-22852-14-git-send-email-namhyung@kernel.org
Signed-off-by: Jiri Olsa <jolsa@kernel.org>
tools/perf/ui/browsers/hists.c

index 92d128f3acdc5026a6014a9121fedf18eca340c1..169224c3158683c850950dc5336ffac5c7ba370a 100644 (file)
@@ -812,10 +812,7 @@ static struct rb_node *hists__filter_entries(struct rb_node *nd,
                if (total)
                        percent = h->stat.period * 100.0 / total;
 
-               if (percent < min_pcnt)
-                       return NULL;
-
-               if (!h->filtered)
+               if (!h->filtered && percent >= min_pcnt)
                        return nd;
 
                nd = rb_next(nd);