diff options
Diffstat (limited to 'tools/perf/util/hist.c')
-rw-r--r-- | tools/perf/util/hist.c | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/tools/perf/util/hist.c b/tools/perf/util/hist.c index 30df6187ee02..86569fa3651d 100644 --- a/tools/perf/util/hist.c +++ b/tools/perf/util/hist.c | |||
@@ -277,6 +277,28 @@ void hists__decay_entries(struct hists *hists, bool zap_user, bool zap_kernel) | |||
277 | } | 277 | } |
278 | } | 278 | } |
279 | 279 | ||
280 | void hists__delete_entries(struct hists *hists) | ||
281 | { | ||
282 | struct rb_node *next = rb_first(&hists->entries); | ||
283 | struct hist_entry *n; | ||
284 | |||
285 | while (next) { | ||
286 | n = rb_entry(next, struct hist_entry, rb_node); | ||
287 | next = rb_next(&n->rb_node); | ||
288 | |||
289 | rb_erase(&n->rb_node, &hists->entries); | ||
290 | |||
291 | if (sort__need_collapse) | ||
292 | rb_erase(&n->rb_node_in, &hists->entries_collapsed); | ||
293 | |||
294 | --hists->nr_entries; | ||
295 | if (!n->filtered) | ||
296 | --hists->nr_non_filtered_entries; | ||
297 | |||
298 | hist_entry__free(n); | ||
299 | } | ||
300 | } | ||
301 | |||
280 | /* | 302 | /* |
281 | * histogram, sorted on item, collects periods | 303 | * histogram, sorted on item, collects periods |
282 | */ | 304 | */ |