Lines Matching full:he
35 struct hist_entry *he);
37 struct hist_entry *he);
39 struct hist_entry *he);
41 struct hist_entry *he);
321 static void hists__delete_entry(struct hists *hists, struct hist_entry *he);
323 static bool hists__decay_entry(struct hists *hists, struct hist_entry *he) in hists__decay_entry() argument
325 u64 prev_period = he->stat.period; in hists__decay_entry()
331 he_stat__decay(&he->stat); in hists__decay_entry()
333 he_stat__decay(he->stat_acc); in hists__decay_entry()
334 decay_callchain(he->callchain); in hists__decay_entry()
336 diff = prev_period - he->stat.period; in hists__decay_entry()
338 if (!he->depth) { in hists__decay_entry()
340 if (!he->filtered) in hists__decay_entry()
344 if (!he->leaf) { in hists__decay_entry()
346 struct rb_node *node = rb_first_cached(&he->hroot_out); in hists__decay_entry()
356 return he->stat.period == 0; in hists__decay_entry()
359 static void hists__delete_entry(struct hists *hists, struct hist_entry *he) in hists__delete_entry() argument
364 if (he->parent_he) { in hists__delete_entry()
365 root_in = &he->parent_he->hroot_in; in hists__delete_entry()
366 root_out = &he->parent_he->hroot_out; in hists__delete_entry()
375 rb_erase_cached(&he->rb_node_in, root_in); in hists__delete_entry()
376 rb_erase_cached(&he->rb_node, root_out); in hists__delete_entry()
379 if (!he->filtered) in hists__delete_entry()
382 hist_entry__delete(he); in hists__delete_entry()
436 static int hist_entry__init(struct hist_entry *he, in hist_entry__init() argument
441 *he = *template; in hist_entry__init()
442 he->callchain_size = callchain_size; in hist_entry__init()
445 he->stat_acc = malloc(sizeof(he->stat)); in hist_entry__init()
446 if (he->stat_acc == NULL) in hist_entry__init()
448 memcpy(he->stat_acc, &he->stat, sizeof(he->stat)); in hist_entry__init()
450 memset(&he->stat, 0, sizeof(he->stat)); in hist_entry__init()
453 he->ms.maps = maps__get(he->ms.maps); in hist_entry__init()
454 he->ms.map = map__get(he->ms.map); in hist_entry__init()
456 if (he->branch_info) { in hist_entry__init()
462 he->branch_info = malloc(sizeof(*he->branch_info)); in hist_entry__init()
463 if (he->branch_info == NULL) in hist_entry__init()
466 memcpy(he->branch_info, template->branch_info, in hist_entry__init()
467 sizeof(*he->branch_info)); in hist_entry__init()
469 he->branch_info->from.ms.map = map__get(he->branch_info->from.ms.map); in hist_entry__init()
470 he->branch_info->to.ms.map = map__get(he->branch_info->to.ms.map); in hist_entry__init()
473 if (he->mem_info) { in hist_entry__init()
474 he->mem_info->iaddr.ms.map = map__get(he->mem_info->iaddr.ms.map); in hist_entry__init()
475 he->mem_info->daddr.ms.map = map__get(he->mem_info->daddr.ms.map); in hist_entry__init()
478 if (hist_entry__has_callchains(he) && symbol_conf.use_callchain) in hist_entry__init()
479 callchain_init(he->callchain); in hist_entry__init()
481 if (he->raw_data) { in hist_entry__init()
482 he->raw_data = memdup(he->raw_data, he->raw_size); in hist_entry__init()
483 if (he->raw_data == NULL) in hist_entry__init()
487 if (he->srcline && he->srcline != SRCLINE_UNKNOWN) { in hist_entry__init()
488 he->srcline = strdup(he->srcline); in hist_entry__init()
489 if (he->srcline == NULL) in hist_entry__init()
494 he->res_samples = calloc(sizeof(struct res_sample), in hist_entry__init()
496 if (!he->res_samples) in hist_entry__init()
500 INIT_LIST_HEAD(&he->pairs.node); in hist_entry__init()
501 he->thread = thread__get(he->thread); in hist_entry__init()
502 he->hroot_in = RB_ROOT_CACHED; in hist_entry__init()
503 he->hroot_out = RB_ROOT_CACHED; in hist_entry__init()
506 he->leaf = true; in hist_entry__init()
511 zfree(&he->srcline); in hist_entry__init()
514 zfree(&he->raw_data); in hist_entry__init()
517 if (he->branch_info) { in hist_entry__init()
518 map__put(he->branch_info->from.ms.map); in hist_entry__init()
519 map__put(he->branch_info->to.ms.map); in hist_entry__init()
520 zfree(&he->branch_info); in hist_entry__init()
522 if (he->mem_info) { in hist_entry__init()
523 map__put(he->mem_info->iaddr.ms.map); in hist_entry__init()
524 map__put(he->mem_info->daddr.ms.map); in hist_entry__init()
527 maps__zput(he->ms.maps); in hist_entry__init()
528 map__zput(he->ms.map); in hist_entry__init()
529 zfree(&he->stat_acc); in hist_entry__init()
553 struct hist_entry *he; in hist_entry__new() local
562 he = ops->new(callchain_size); in hist_entry__new()
563 if (he) { in hist_entry__new()
564 err = hist_entry__init(he, template, sample_self, callchain_size); in hist_entry__new()
566 ops->free(he); in hist_entry__new()
567 he = NULL; in hist_entry__new()
571 return he; in hist_entry__new()
581 static void hist_entry__add_callchain_period(struct hist_entry *he, u64 period) in hist_entry__add_callchain_period() argument
583 if (!hist_entry__has_callchains(he) || !symbol_conf.use_callchain) in hist_entry__add_callchain_period()
586 he->hists->callchain_period += period; in hist_entry__add_callchain_period()
587 if (!he->filtered) in hist_entry__add_callchain_period()
588 he->hists->callchain_non_filtered_period += period; in hist_entry__add_callchain_period()
598 struct hist_entry *he; in hists__findnew_entry() local
607 he = rb_entry(parent, struct hist_entry, rb_node_in); in hists__findnew_entry()
615 cmp = hist_entry__cmp(he, entry); in hists__findnew_entry()
618 he_stat__add_period(&he->stat, period); in hists__findnew_entry()
619 hist_entry__add_callchain_period(he, period); in hists__findnew_entry()
622 he_stat__add_period(he->stat_acc, period); in hists__findnew_entry()
640 if (hists__has(hists, sym) && he->ms.map != entry->ms.map) { in hists__findnew_entry()
641 if (he->ms.sym) { in hists__findnew_entry()
642 u64 addr = he->ms.sym->start; in hists__findnew_entry()
643 he->ms.sym = map__find_symbol(entry->ms.map, addr); in hists__findnew_entry()
646 map__put(he->ms.map); in hists__findnew_entry()
647 he->ms.map = map__get(entry->ms.map); in hists__findnew_entry()
660 he = hist_entry__new(entry, sample_self); in hists__findnew_entry()
661 if (!he) in hists__findnew_entry()
665 hist_entry__add_callchain_period(he, period); in hists__findnew_entry()
668 rb_link_node(&he->rb_node_in, parent, p); in hists__findnew_entry()
669 rb_insert_color_cached(&he->rb_node_in, hists->entries_in, leftmost); in hists__findnew_entry()
672 he_stat__add_cpumode_period(&he->stat, al->cpumode, period); in hists__findnew_entry()
674 he_stat__add_cpumode_period(he->stat_acc, al->cpumode, period); in hists__findnew_entry()
675 return he; in hists__findnew_entry()
688 static void hists__res_sample(struct hist_entry *he, struct perf_sample *sample) in hists__res_sample() argument
693 if (he->num_res < symbol_conf.res_sample) { in hists__res_sample()
694 j = he->num_res++; in hists__res_sample()
698 r = &he->res_samples[j]; in hists__res_sample()
757 }, *he = hists__findnew_entry(hists, &entry, al, sample_self); in __hists__add_entry() local
759 if (!hists->has_callchains && he && he->callchain_size != 0) in __hists__add_entry()
761 if (he && symbol_conf.res_sample) in __hists__add_entry()
762 hists__res_sample(he, sample); in __hists__add_entry()
763 return he; in __hists__add_entry()
805 }, *he = hists__findnew_entry(hists, &entry, al, false); in hists__add_entry_block() local
807 return he; in hists__add_entry_block()
845 struct hist_entry *he; in iter_add_single_mem_entry() local
863 he = hists__add_entry(hists, al, iter->parent, NULL, mi, NULL, in iter_add_single_mem_entry()
865 if (!he) in iter_add_single_mem_entry()
868 iter->he = he; in iter_add_single_mem_entry()
878 struct hist_entry *he = iter->he; in iter_finish_mem_entry() local
881 if (he == NULL) in iter_finish_mem_entry()
884 hists__inc_nr_samples(hists, he->filtered); in iter_finish_mem_entry()
886 err = hist_entry__append_callchain(he, iter->sample); in iter_finish_mem_entry()
896 iter->he = NULL; in iter_finish_mem_entry()
952 struct hist_entry *he = NULL; in iter_add_next_branch_entry() local
968 he = hists__add_entry(hists, al, iter->parent, &bi[i], NULL, NULL, in iter_add_next_branch_entry()
970 if (he == NULL) in iter_add_next_branch_entry()
973 hists__inc_nr_samples(hists, he->filtered); in iter_add_next_branch_entry()
976 iter->he = he; in iter_add_next_branch_entry()
986 iter->he = NULL; in iter_finish_branch_entry()
1003 struct hist_entry *he; in iter_add_single_normal_entry() local
1005 he = hists__add_entry(evsel__hists(evsel), al, iter->parent, NULL, NULL, in iter_add_single_normal_entry()
1007 if (he == NULL) in iter_add_single_normal_entry()
1010 iter->he = he; in iter_add_single_normal_entry()
1018 struct hist_entry *he = iter->he; in iter_finish_normal_entry() local
1022 if (he == NULL) in iter_finish_normal_entry()
1025 iter->he = NULL; in iter_finish_normal_entry()
1027 hists__inc_nr_samples(evsel__hists(evsel), he->filtered); in iter_finish_normal_entry()
1029 return hist_entry__append_callchain(he, sample); in iter_finish_normal_entry()
1067 struct hist_entry *he; in iter_add_single_cumulative_entry() local
1070 he = hists__add_entry(hists, al, iter->parent, NULL, NULL, NULL, in iter_add_single_cumulative_entry()
1072 if (he == NULL) in iter_add_single_cumulative_entry()
1075 iter->he = he; in iter_add_single_cumulative_entry()
1076 he_cache[iter->curr++] = he; in iter_add_single_cumulative_entry()
1078 hist_entry__append_callchain(he, sample); in iter_add_single_cumulative_entry()
1086 hists__inc_nr_samples(hists, he->filtered); in iter_add_single_cumulative_entry()
1125 struct hist_entry *he; in iter_add_next_cumulative_entry() local
1168 iter->he = NULL; in iter_add_next_cumulative_entry()
1173 he = hists__add_entry(evsel__hists(evsel), al, iter->parent, NULL, NULL, in iter_add_next_cumulative_entry()
1175 if (he == NULL) in iter_add_next_cumulative_entry()
1178 iter->he = he; in iter_add_next_cumulative_entry()
1179 he_cache[iter->curr++] = he; in iter_add_next_cumulative_entry()
1181 if (hist_entry__has_callchains(he) && symbol_conf.use_callchain) in iter_add_next_cumulative_entry()
1182 callchain_append(he->callchain, &cursor, sample->period); in iter_add_next_cumulative_entry()
1191 iter->he = NULL; in iter_finish_cumulative_entry()
1252 if (iter->he && iter->add_entry_cb) { in hist_entry_iter__add()
1263 if (iter->he && iter->add_entry_cb) { in hist_entry_iter__add()
1320 void hist_entry__delete(struct hist_entry *he) in hist_entry__delete() argument
1322 struct hist_entry_ops *ops = he->ops; in hist_entry__delete()
1324 thread__zput(he->thread); in hist_entry__delete()
1325 maps__zput(he->ms.maps); in hist_entry__delete()
1326 map__zput(he->ms.map); in hist_entry__delete()
1328 if (he->branch_info) { in hist_entry__delete()
1329 map__zput(he->branch_info->from.ms.map); in hist_entry__delete()
1330 map__zput(he->branch_info->to.ms.map); in hist_entry__delete()
1331 zfree_srcline(&he->branch_info->srcline_from); in hist_entry__delete()
1332 zfree_srcline(&he->branch_info->srcline_to); in hist_entry__delete()
1333 zfree(&he->branch_info); in hist_entry__delete()
1336 if (he->mem_info) { in hist_entry__delete()
1337 map__zput(he->mem_info->iaddr.ms.map); in hist_entry__delete()
1338 map__zput(he->mem_info->daddr.ms.map); in hist_entry__delete()
1339 mem_info__zput(he->mem_info); in hist_entry__delete()
1342 if (he->block_info) in hist_entry__delete()
1343 block_info__zput(he->block_info); in hist_entry__delete()
1345 if (he->kvm_info) in hist_entry__delete()
1346 kvm_info__zput(he->kvm_info); in hist_entry__delete()
1348 zfree(&he->res_samples); in hist_entry__delete()
1349 zfree(&he->stat_acc); in hist_entry__delete()
1350 zfree_srcline(&he->srcline); in hist_entry__delete()
1351 if (he->srcfile && he->srcfile[0]) in hist_entry__delete()
1352 zfree(&he->srcfile); in hist_entry__delete()
1353 free_callchain(he->callchain); in hist_entry__delete()
1354 zfree(&he->trace_output); in hist_entry__delete()
1355 zfree(&he->raw_data); in hist_entry__delete()
1356 ops->free(he); in hist_entry__delete()
1366 int hist_entry__snprintf_alignment(struct hist_entry *he, struct perf_hpp *hpp, in hist_entry__snprintf_alignment() argument
1369 if (!list_is_last(&fmt->list, &he->hists->hpp_list->fields)) { in hist_entry__snprintf_alignment()
1370 const int width = fmt->width(fmt, hpp, he->hists); in hist_entry__snprintf_alignment()
1384 static void hists__apply_filters(struct hists *hists, struct hist_entry *he);
1385 static void hists__remove_entry_filter(struct hists *hists, struct hist_entry *he,
1395 static void hist_entry__check_and_remove_filter(struct hist_entry *he, in hist_entry__check_and_remove_filter() argument
1401 struct hist_entry *parent = he->parent_he; in hist_entry__check_and_remove_filter()
1428 perf_hpp_list__for_each_format(he->hpp_list, fmt) { in hist_entry__check_and_remove_filter()
1442 if (!(he->filtered & (1 << type))) { in hist_entry__check_and_remove_filter()
1459 he->filtered |= (1 << type); in hist_entry__check_and_remove_filter()
1461 he->filtered |= (parent->filtered & (1 << type)); in hist_entry__check_and_remove_filter()
1465 static void hist_entry__apply_hierarchy_filters(struct hist_entry *he) in hist_entry__apply_hierarchy_filters() argument
1467 hist_entry__check_and_remove_filter(he, HIST_FILTER__THREAD, in hist_entry__apply_hierarchy_filters()
1470 hist_entry__check_and_remove_filter(he, HIST_FILTER__DSO, in hist_entry__apply_hierarchy_filters()
1473 hist_entry__check_and_remove_filter(he, HIST_FILTER__SYMBOL, in hist_entry__apply_hierarchy_filters()
1476 hists__apply_filters(he->hists, he); in hist_entry__apply_hierarchy_filters()
1481 struct hist_entry *he, in hierarchy_insert_entry() argument
1498 cmp = fmt->collapse(fmt, iter, he); in hierarchy_insert_entry()
1504 he_stat__add_stat(&iter->stat, &he->stat); in hierarchy_insert_entry()
1516 new = hist_entry__new(he, true); in hierarchy_insert_entry()
1531 he->trace_output = NULL; in hierarchy_insert_entry()
1536 he->srcline = NULL; in hierarchy_insert_entry()
1541 he->srcfile = NULL; in hierarchy_insert_entry()
1553 struct hist_entry *he) in hists__hierarchy_insert_entry() argument
1566 /* insert copy of 'he' for each fmt into the hierarchy */ in hists__hierarchy_insert_entry()
1567 new_he = hierarchy_insert_entry(hists, root, he, parent, &node->hpp); in hists__hierarchy_insert_entry()
1591 he->callchain) < 0) in hists__hierarchy_insert_entry()
1596 /* 'he' is no longer used */ in hists__hierarchy_insert_entry()
1597 hist_entry__delete(he); in hists__hierarchy_insert_entry()
1605 struct hist_entry *he) in hists__collapse_insert_entry() argument
1614 return hists__hierarchy_insert_entry(hists, root, he); in hists__collapse_insert_entry()
1620 cmp = hist_entry__collapse(iter, he); in hists__collapse_insert_entry()
1625 he_stat__add_stat(&iter->stat, &he->stat); in hists__collapse_insert_entry()
1627 he_stat__add_stat(iter->stat_acc, he->stat_acc); in hists__collapse_insert_entry()
1629 if (hist_entry__has_callchains(he) && symbol_conf.use_callchain) { in hists__collapse_insert_entry()
1634 if (callchain_merge(cursor, iter->callchain, he->callchain) < 0) in hists__collapse_insert_entry()
1640 hist_entry__delete(he); in hists__collapse_insert_entry()
1653 rb_link_node(&he->rb_node_in, parent, p); in hists__collapse_insert_entry()
1654 rb_insert_color_cached(&he->rb_node_in, root, leftmost); in hists__collapse_insert_entry()
1673 static void hists__apply_filters(struct hists *hists, struct hist_entry *he) in hists__apply_filters() argument
1675 hists__filter_entry_by_dso(hists, he); in hists__apply_filters()
1676 hists__filter_entry_by_thread(hists, he); in hists__apply_filters()
1677 hists__filter_entry_by_symbol(hists, he); in hists__apply_filters()
1678 hists__filter_entry_by_socket(hists, he); in hists__apply_filters()
1772 struct hist_entry *he; in hierarchy_recalc_total_periods() local
1785 he = rb_entry(node, struct hist_entry, rb_node); in hierarchy_recalc_total_periods()
1788 hists->stats.total_period += he->stat.period; in hierarchy_recalc_total_periods()
1789 if (!he->filtered) in hierarchy_recalc_total_periods()
1790 hists->stats.total_non_filtered_period += he->stat.period; in hierarchy_recalc_total_periods()
1795 struct hist_entry *he) in hierarchy_insert_output_entry() argument
1807 if (hist_entry__sort(he, iter) > 0) in hierarchy_insert_output_entry()
1815 rb_link_node(&he->rb_node, parent, p); in hierarchy_insert_output_entry()
1816 rb_insert_color_cached(&he->rb_node, root, leftmost); in hierarchy_insert_output_entry()
1819 perf_hpp_list__for_each_sort_list(he->hpp_list, fmt) { in hierarchy_insert_output_entry()
1821 fmt->init(fmt, he); in hierarchy_insert_output_entry()
1833 struct hist_entry *he; in hists__hierarchy_output_resort() local
1839 he = rb_entry(node, struct hist_entry, rb_node_in); in hists__hierarchy_output_resort()
1842 hierarchy_insert_output_entry(root_out, he); in hists__hierarchy_output_resort()
1848 if (!he->filtered) { in hists__hierarchy_output_resort()
1850 hists__calc_col_len(hists, he); in hists__hierarchy_output_resort()
1853 if (!he->leaf) { in hists__hierarchy_output_resort()
1855 &he->hroot_in, in hists__hierarchy_output_resort()
1856 &he->hroot_out, in hists__hierarchy_output_resort()
1866 u64 total = he->stat.period; in hists__hierarchy_output_resort()
1869 total = he->stat_acc->period; in hists__hierarchy_output_resort()
1874 callchain_param.sort(&he->sorted_chain, he->callchain, in hists__hierarchy_output_resort()
1880 struct hist_entry *he, in __hists__insert_output_entry() argument
1892 u64 total = he->stat.period; in __hists__insert_output_entry()
1895 total = he->stat_acc->period; in __hists__insert_output_entry()
1899 callchain_param.sort(&he->sorted_chain, he->callchain, in __hists__insert_output_entry()
1907 if (hist_entry__sort(he, iter) > 0) in __hists__insert_output_entry()
1915 rb_link_node(&he->rb_node, parent, p); in __hists__insert_output_entry()
1916 rb_insert_color_cached(&he->rb_node, entries, leftmost); in __hists__insert_output_entry()
1921 fmt->init(fmt, he); in __hists__insert_output_entry()
2011 static bool can_goto_child(struct hist_entry *he, enum hierarchy_move_dir hmd) in can_goto_child() argument
2013 if (he->leaf || hmd == HMD_FORCE_SIBLING) in can_goto_child()
2016 if (he->unfolded || hmd == HMD_FORCE_CHILD) in can_goto_child()
2024 struct hist_entry *he = rb_entry(node, struct hist_entry, rb_node); in rb_hierarchy_last() local
2026 while (can_goto_child(he, HMD_NORMAL)) { in rb_hierarchy_last()
2027 node = rb_last(&he->hroot_out.rb_root); in rb_hierarchy_last()
2028 he = rb_entry(node, struct hist_entry, rb_node); in rb_hierarchy_last()
2035 struct hist_entry *he = rb_entry(node, struct hist_entry, rb_node); in __rb_hierarchy_next() local
2037 if (can_goto_child(he, hmd)) in __rb_hierarchy_next()
2038 node = rb_first_cached(&he->hroot_out); in __rb_hierarchy_next()
2043 he = he->parent_he; in __rb_hierarchy_next()
2044 if (he == NULL) in __rb_hierarchy_next()
2047 node = rb_next(&he->rb_node); in __rb_hierarchy_next()
2054 struct hist_entry *he = rb_entry(node, struct hist_entry, rb_node); in rb_hierarchy_prev() local
2060 he = he->parent_he; in rb_hierarchy_prev()
2061 if (he == NULL) in rb_hierarchy_prev()
2064 return &he->rb_node; in rb_hierarchy_prev()
2067 bool hist_entry__has_hierarchy_children(struct hist_entry *he, float limit) in hist_entry__has_hierarchy_children() argument
2073 if (he->leaf) in hist_entry__has_hierarchy_children()
2076 node = rb_first_cached(&he->hroot_out); in hist_entry__has_hierarchy_children()
2135 struct hist_entry *he) in hists__filter_entry_by_dso() argument
2138 (he->ms.map == NULL || map__dso(he->ms.map) != hists->dso_filter)) { in hists__filter_entry_by_dso()
2139 he->filtered |= (1 << HIST_FILTER__DSO); in hists__filter_entry_by_dso()
2147 struct hist_entry *he) in hists__filter_entry_by_thread() argument
2150 RC_CHK_ACCESS(he->thread) != RC_CHK_ACCESS(hists->thread_filter)) { in hists__filter_entry_by_thread()
2151 he->filtered |= (1 << HIST_FILTER__THREAD); in hists__filter_entry_by_thread()
2159 struct hist_entry *he) in hists__filter_entry_by_symbol() argument
2162 (!he->ms.sym || strstr(he->ms.sym->name, in hists__filter_entry_by_symbol()
2164 he->filtered |= (1 << HIST_FILTER__SYMBOL); in hists__filter_entry_by_symbol()
2172 struct hist_entry *he) in hists__filter_entry_by_socket() argument
2175 (he->socket != hists->socket_filter)) { in hists__filter_entry_by_socket()
2176 he->filtered |= (1 << HIST_FILTER__SOCKET); in hists__filter_entry_by_socket()
2183 typedef bool (*filter_fn_t)(struct hists *hists, struct hist_entry *he);
2205 struct hist_entry *he) in resort_filtered_entry() argument
2218 if (hist_entry__sort(he, iter) > 0) in resort_filtered_entry()
2226 rb_link_node(&he->rb_node, parent, p); in resort_filtered_entry()
2227 rb_insert_color_cached(&he->rb_node, root, leftmost); in resort_filtered_entry()
2229 if (he->leaf || he->filtered) in resort_filtered_entry()
2232 nd = rb_first_cached(&he->hroot_out); in resort_filtered_entry()
2237 rb_erase_cached(&h->rb_node, &he->hroot_out); in resort_filtered_entry()
2242 he->hroot_out = new_root; in resort_filtered_entry()
2386 struct hist_entry *he; in hists__add_dummy_entry() local
2399 he = rb_entry(parent, struct hist_entry, rb_node_in); in hists__add_dummy_entry()
2401 cmp = hist_entry__collapse(he, pair); in hists__add_dummy_entry()
2414 he = hist_entry__new(pair, true); in hists__add_dummy_entry()
2415 if (he) { in hists__add_dummy_entry()
2416 memset(&he->stat, 0, sizeof(he->stat)); in hists__add_dummy_entry()
2417 he->hists = hists; in hists__add_dummy_entry()
2419 memset(he->stat_acc, 0, sizeof(he->stat)); in hists__add_dummy_entry()
2420 rb_link_node(&he->rb_node_in, parent, p); in hists__add_dummy_entry()
2421 rb_insert_color_cached(&he->rb_node_in, root, leftmost); in hists__add_dummy_entry()
2422 hists__inc_stats(hists, he); in hists__add_dummy_entry()
2423 he->dummy = true; in hists__add_dummy_entry()
2426 return he; in hists__add_dummy_entry()
2435 struct hist_entry *he; in add_dummy_hierarchy_entry() local
2444 he = rb_entry(parent, struct hist_entry, rb_node_in); in add_dummy_hierarchy_entry()
2446 perf_hpp_list__for_each_sort_list(he->hpp_list, fmt) { in add_dummy_hierarchy_entry()
2447 cmp = fmt->collapse(fmt, he, pair); in add_dummy_hierarchy_entry()
2462 he = hist_entry__new(pair, true); in add_dummy_hierarchy_entry()
2463 if (he) { in add_dummy_hierarchy_entry()
2464 rb_link_node(&he->rb_node_in, parent, p); in add_dummy_hierarchy_entry()
2465 rb_insert_color_cached(&he->rb_node_in, root, leftmost); in add_dummy_hierarchy_entry()
2467 he->dummy = true; in add_dummy_hierarchy_entry()
2468 he->hists = hists; in add_dummy_hierarchy_entry()
2469 memset(&he->stat, 0, sizeof(he->stat)); in add_dummy_hierarchy_entry()
2470 hists__inc_stats(hists, he); in add_dummy_hierarchy_entry()
2473 return he; in add_dummy_hierarchy_entry()
2477 struct hist_entry *he) in hists__find_entry() argument
2488 int64_t cmp = hist_entry__collapse(iter, he); in hists__find_entry()
2502 struct hist_entry *he) in hists__find_hierarchy_entry() argument
2512 perf_hpp_list__for_each_sort_list(he->hpp_list, fmt) { in hists__find_hierarchy_entry()
2513 cmp = fmt->collapse(fmt, iter, he); in hists__find_hierarchy_entry()
2868 struct hist_entry *he; in hists__delete_remaining_entries() local
2874 he = rb_entry(node, struct hist_entry, rb_node_in); in hists__delete_remaining_entries()
2875 hist_entry__delete(he); in hists__delete_remaining_entries()