On Tue, 22 Apr 2014 19:10:49 +0200, Jiri Olsa wrote: > On Tue, Apr 22, 2014 at 05:49:45PM +0900, Namhyung Kim wrote: > > SNIP > >> >> diff --git a/tools/perf/util/hist.c b/tools/perf/util/hist.c >> index 1c77714f668d..f955ae5a41c5 100644 >> --- a/tools/perf/util/hist.c >> +++ b/tools/perf/util/hist.c >> @@ -344,9 +344,11 @@ void hists__inc_nr_entries(struct hists *hists, struct >> hist_entry *h) >> hists__calc_col_len(hists, h); >> hists->nr_non_filtered_entries++; >> hists->stats.total_non_filtered_period += h->stat.period; >> + hists->stats.nr_non_filtered_samples += h->stat.nr_events; >> } >> hists->nr_entries++; >> hists->stats.total_period += h->stat.period; >> + hists__add_nr_events(hists, PERF_RECORD_SAMPLE, h->stat.nr_events); > > while at it.. could hists__remove_entry_filter call hists__inc_nr_entries too?
Nope, I (and Arnaldo) want to the default stats invariant - they are not changed by any filter. As you can see hists__remove_entry_filter() only updates non-filtered stats. > > not sure about those 2 extra lines in hists__remove_entry_filter: > > if (h->ms.unfolded) > hists->nr_non_filtered_entries += h->nr_rows; > h->row_offset = 0; > > maybe they should be added into hists__inc_nr_entries? Hmm.. this seems like a mix of generic code and UI-specific code. The ->nr_rows, ->row_offset and ->ms.unfolded are only used by TUI browser code AFAIK and it takes the folding state into account. I think we should just make it folded to make things simple - and finally get rid of the UI-specific bits in the generic code. Thanks, Namhyung -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/