Home
last modified time | relevance | path

Searched refs:he (Results 1 – 25 of 28) sorted by relevance

12

/tools/perf/tests/
Dhists_output.c94 struct hist_entry *he; in del_hist_entries() local
109 he = rb_entry(node, struct hist_entry, rb_node); in del_hist_entries()
111 rb_erase_cached(&he->rb_node_in, root_in); in del_hist_entries()
112 hist_entry__delete(he); in del_hist_entries()
118 #define COMM(he) (thread__comm_str(he->thread)) argument
119 #define DSO(he) (he->ms.map->dso->short_name) argument
120 #define SYM(he) (he->ms.sym->name) argument
121 #define CPU(he) (he->cpu) argument
122 #define PID(he) (he->thread->tid) argument
129 struct hist_entry *he; in test1() local
[all …]
Dhists_common.c177 struct hist_entry *he; in print_hists_in() local
179 he = rb_entry(node, struct hist_entry, rb_node_in); in print_hists_in()
181 if (!he->filtered) { in print_hists_in()
183 i, thread__comm_str(he->thread), in print_hists_in()
184 he->ms.map->dso->short_name, in print_hists_in()
185 he->ms.sym->name, he->stat.period); in print_hists_in()
204 struct hist_entry *he; in print_hists_out() local
206 he = rb_entry(node, struct hist_entry, rb_node); in print_hists_out()
208 if (!he->filtered) { in print_hists_out()
210 i, thread__comm_str(he->thread), he->thread->tid, in print_hists_out()
[all …]
Dhists_link.c68 struct hist_entry *he; in add_hist_entries() local
89 he = hists__add_entry(hists, &al, NULL, in add_hist_entries()
91 if (he == NULL) { in add_hist_entries()
108 he = hists__add_entry(hists, &al, NULL, in add_hist_entries()
110 if (he == NULL) { in add_hist_entries()
157 struct hist_entry *he; in __validate_match() local
159 he = rb_entry(node, struct hist_entry, rb_node_in); in __validate_match()
161 if (hist_entry__has_pairs(he)) { in __validate_match()
164 he->thread, he->ms.map, he->ms.sym)) { in __validate_match()
209 struct hist_entry *he; in __validate_link() local
[all …]
Dhists_cumulate.c128 struct hist_entry *he; in del_hist_entries() local
143 he = rb_entry(node, struct hist_entry, rb_node); in del_hist_entries()
145 rb_erase_cached(&he->rb_node_in, root_in); in del_hist_entries()
146 hist_entry__delete(he); in del_hist_entries()
152 #define COMM(he) (thread__comm_str(he->thread)) argument
153 #define DSO(he) (he->ms.map->dso->short_name) argument
154 #define SYM(he) (he->ms.sym->name) argument
155 #define CPU(he) (he->cpu) argument
156 #define PID(he) (he->thread->tid) argument
157 #define DEPTH(he) (he->callchain->max_depth) argument
[all …]
/tools/perf/util/
Dhist.c34 struct hist_entry *he);
36 struct hist_entry *he);
38 struct hist_entry *he);
40 struct hist_entry *he);
315 static void hists__delete_entry(struct hists *hists, struct hist_entry *he);
317 static bool hists__decay_entry(struct hists *hists, struct hist_entry *he) in hists__decay_entry() argument
319 u64 prev_period = he->stat.period; in hists__decay_entry()
325 he_stat__decay(&he->stat); in hists__decay_entry()
327 he_stat__decay(he->stat_acc); in hists__decay_entry()
328 decay_callchain(he->callchain); in hists__decay_entry()
[all …]
Dsort.h166 static __pure inline bool hist_entry__has_callchains(struct hist_entry *he) in hist_entry__has_callchains() argument
168 return he->callchain_size != 0; in hist_entry__has_callchains()
171 int hist_entry__sym_snprintf(struct hist_entry *he, char *bf, size_t size, unsigned int width);
173 static inline bool hist_entry__has_pairs(struct hist_entry *he) in hist_entry__has_pairs() argument
175 return !list_empty(&he->pairs.node); in hist_entry__has_pairs()
178 static inline struct hist_entry *hist_entry__next_pair(struct hist_entry *he) in hist_entry__next_pair() argument
180 if (hist_entry__has_pairs(he)) in hist_entry__next_pair()
181 return list_entry(he->pairs.node.next, struct hist_entry, pairs.node); in hist_entry__next_pair()
186 struct hist_entry *he) in hist_entry__add_pair() argument
188 list_add_tail(&pair->pairs.node, &he->pairs.head); in hist_entry__add_pair()
[all …]
Dsort.c103 static int hist_entry__thread_snprintf(struct hist_entry *he, char *bf, in hist_entry__thread_snprintf() argument
106 const char *comm = thread__comm_str(he->thread); in hist_entry__thread_snprintf()
109 return repsep_snprintf(bf, size, "%7d:%-*.*s", he->thread->tid, in hist_entry__thread_snprintf()
113 static int hist_entry__thread_filter(struct hist_entry *he, int type, const void *arg) in hist_entry__thread_filter() argument
120 return th && he->thread != th; in hist_entry__thread_filter()
156 static int hist_entry__comm_snprintf(struct hist_entry *he, char *bf, in hist_entry__comm_snprintf() argument
159 return repsep_snprintf(bf, size, "%-*.*s", width, width, comm__str(he->comm)); in hist_entry__comm_snprintf()
212 static int hist_entry__dso_snprintf(struct hist_entry *he, char *bf, in hist_entry__dso_snprintf() argument
215 return _hist_entry__dso_snprintf(he->ms.map, bf, size, width); in hist_entry__dso_snprintf()
218 static int hist_entry__dso_filter(struct hist_entry *he, int type, const void *arg) in hist_entry__dso_filter() argument
[all …]
Dblock-info.c116 int block_info__process_sym(struct hist_entry *he, struct block_hist *bh, in block_info__process_sym() argument
124 if (!he->ms.map || !he->ms.sym) in block_info__process_sym()
128 al.map = he->ms.map; in block_info__process_sym()
129 al.sym = he->ms.sym; in block_info__process_sym()
131 notes = symbol__annotation(he->ms.sym); in block_info__process_sym()
135 for (unsigned int i = 0; i < symbol__size(he->ms.sym); i++) { in block_info__process_sym()
144 init_block_info(bi, he->ms.sym, &ch[i], i, in block_info__process_sym()
197 struct hist_entry *he) in block_total_cycles_pct_entry() argument
200 struct block_info *bi = he->block_info; in block_total_cycles_pct_entry()
240 struct perf_hpp *hpp, struct hist_entry *he) in block_cycles_lbr_entry() argument
[all …]
Dhist.h129 struct hist_entry *he; member
174 int hist_entry__sort_snprintf(struct hist_entry *he, char *bf, size_t size,
176 int hist_entry__snprintf_alignment(struct hist_entry *he, struct perf_hpp *hpp,
178 void hist_entry__delete(struct hist_entry *he);
180 typedef int (*hists__resort_cb_t)(struct hist_entry *he, void *arg);
223 void hists__calc_col_len(struct hists *hists, struct hist_entry *he);
271 struct hist_entry *he);
273 struct hist_entry *he);
393 int hist_entry__filter(struct hist_entry *he, int type, const void *arg);
413 typedef u64 (*hpp_field_fn)(struct hist_entry *he);
[all …]
Dstream.c99 static void update_hot_callchain(struct hist_entry *he, in update_hot_callchain() argument
102 struct rb_root *root = &he->sorted_chain; in update_hot_callchain()
118 struct hist_entry *he; in init_hot_callchain() local
120 he = rb_entry(next, struct hist_entry, rb_node); in init_hot_callchain()
121 update_hot_callchain(he, es); in init_hot_callchain()
122 next = rb_next(&he->rb_node); in init_hot_callchain()
Dblock-info.h70 int block_info__process_sym(struct hist_entry *he, struct block_hist *bh,
84 float block_info__total_cycles_percent(struct hist_entry *he);
Dannotate.h131 struct sym_hist_entry he; member
348 int hist_entry__inc_addr_samples(struct hist_entry *he, struct perf_sample *sample,
Dcallchain.c1098 int hist_entry__append_callchain(struct hist_entry *he, struct perf_sample *sample) in hist_entry__append_callchain() argument
1103 return callchain_append(he->callchain, &callchain_cursor, sample->period); in hist_entry__append_callchain()
1671 static u64 count_callchain_hits(struct hist_entry *he) in count_callchain_hits() argument
1673 struct rb_root *root = &he->sorted_chain; in count_callchain_hits()
1693 struct hist_entry *he = rb_entry(next, struct hist_entry, in callchain_total_hits() local
1696 chain_hits += count_callchain_hits(he); in callchain_total_hits()
1697 next = rb_next(&he->rb_node); in callchain_total_hits()
Dcallchain.h253 int hist_entry__append_callchain(struct hist_entry *he, struct perf_sample *sample);
/tools/perf/
Dbuiltin-diff.c272 static double period_percent(struct hist_entry *he, u64 period) in period_percent() argument
274 u64 total = hists__total_period(he->hists); in period_percent()
279 static double compute_delta(struct hist_entry *he, struct hist_entry *pair) in compute_delta() argument
281 double old_percent = period_percent(he, he->stat.period); in compute_delta()
289 static double compute_ratio(struct hist_entry *he, struct hist_entry *pair) in compute_ratio() argument
291 double old_period = he->stat.period ?: 1; in compute_ratio()
299 static s64 compute_wdiff(struct hist_entry *he, struct hist_entry *pair) in compute_wdiff() argument
301 u64 old_period = he->stat.period; in compute_wdiff()
311 static int formula_delta(struct hist_entry *he, struct hist_entry *pair, in formula_delta() argument
314 u64 he_total = he->hists->stats.total_period; in formula_delta()
[all …]
Dbuiltin-c2c.c79 struct hist_entry he; member
158 return &c2c_he->he; in c2c_he_zalloc()
161 static void c2c_he_free(void *he) in c2c_he_free() argument
165 c2c_he = container_of(he, struct c2c_hist_entry, he); in c2c_he_free()
188 he__get_c2c_hists(struct hist_entry *he, in he__get_c2c_hists() argument
196 c2c_he = container_of(he, struct c2c_hist_entry, he); in he__get_c2c_hists()
268 struct hist_entry *he; in process_sample_event() local
300 he = hists__add_entry_ops(&c2c_hists->hists, &c2c_entry_ops, in process_sample_event()
303 if (he == NULL) in process_sample_event()
306 c2c_he = container_of(he, struct c2c_hist_entry, he); in process_sample_event()
[all …]
Dbuiltin-annotate.c160 struct hist_entry *he = iter->he; in hist_iter__branch_callback() local
166 bi = he->branch_info; in hist_iter__branch_callback()
220 struct hist_entry *he; in evsel__add_sample() local
250 he = hists__add_entry(hists, al, NULL, NULL, NULL, sample, true); in evsel__add_sample()
251 if (he == NULL) in evsel__add_sample()
254 ret = hist_entry__inc_addr_samples(he, sample, evsel, al->addr); in evsel__add_sample()
297 static int hist_entry__tty_annotate(struct hist_entry *he, in hist_entry__tty_annotate() argument
302 return symbol__tty_annotate(&he->ms, evsel, &ann->opts); in hist_entry__tty_annotate()
304 return symbol__tty_annotate2(&he->ms, evsel, &ann->opts); in hist_entry__tty_annotate()
315 struct hist_entry *he = rb_entry(nd, struct hist_entry, rb_node); in hists__find_annotations() local
[all …]
Dbuiltin-top.c111 static int perf_top__parse_source(struct perf_top *top, struct hist_entry *he) in perf_top__parse_source() argument
119 if (!he || !he->ms.sym) in perf_top__parse_source()
122 evsel = hists_to_evsel(he->hists); in perf_top__parse_source()
124 sym = he->ms.sym; in perf_top__parse_source()
125 map = he->ms.map; in perf_top__parse_source()
149 err = symbol__annotate(&he->ms, evsel, &top->annotation_opts, NULL); in perf_top__parse_source()
151 top->sym_filter_entry = he; in perf_top__parse_source()
154 symbol__strerror_disassemble(&he->ms, err, msg, sizeof(msg)); in perf_top__parse_source()
162 static void __zero_source_counters(struct hist_entry *he) in __zero_source_counters() argument
164 struct symbol *sym = he->ms.sym; in __zero_source_counters()
[all …]
Dbuiltin-report.c153 struct hist_entry *he = iter->he; in hist_iter__report_callback() local
163 bi = he->branch_info; in hist_iter__report_callback()
171 mi = he->mem_info; in hist_iter__report_callback()
176 err = hist_entry__inc_addr_samples(he, sample, evsel, al->addr); in hist_iter__report_callback()
180 err = hist_entry__inc_addr_samples(he, sample, evsel, al->addr); in hist_iter__report_callback()
182 err = hist_entry__inc_addr_samples(he, sample, evsel, al->addr); in hist_iter__report_callback()
194 struct hist_entry *he = iter->he; in hist_iter__branch_callback() local
196 struct branch_info *bi = he->branch_info; in hist_iter__branch_callback()
708 static int hists__resort_cb(struct hist_entry *he, void *arg) in hists__resort_cb() argument
711 struct symbol *sym = he->ms.sym; in hists__resort_cb()
[all …]
/tools/perf/ui/stdio/
Dhist.c381 static size_t hist_entry_callchain__fprintf(struct hist_entry *he, in hist_entry_callchain__fprintf() argument
385 u64 parent_samples = he->stat.period; in hist_entry_callchain__fprintf()
388 parent_samples = he->stat_acc->period; in hist_entry_callchain__fprintf()
392 return callchain__fprintf_graph(fp, &he->sorted_chain, total_samples, in hist_entry_callchain__fprintf()
396 return callchain__fprintf_graph(fp, &he->sorted_chain, total_samples, in hist_entry_callchain__fprintf()
400 return callchain__fprintf_flat(fp, &he->sorted_chain, total_samples); in hist_entry_callchain__fprintf()
403 return callchain__fprintf_folded(fp, &he->sorted_chain, total_samples); in hist_entry_callchain__fprintf()
414 int __hist_entry__snprintf(struct hist_entry *he, struct perf_hpp *hpp, in __hist_entry__snprintf() argument
423 if (symbol_conf.exclude_other && !he->parent) in __hist_entry__snprintf()
427 if (perf_hpp__should_skip(fmt, he->hists)) in __hist_entry__snprintf()
[all …]
/tools/perf/ui/browsers/
Dhists.c70 struct hist_entry *he = in hist_browser__get_folding() local
73 if (he->leaf && he->unfolded) in hist_browser__get_folding()
74 unfolded_rows += he->nr_rows; in hist_browser__get_folding()
161 static char hist_entry__folded(const struct hist_entry *he) in hist_entry__folded() argument
163 return he->has_children ? tree__folded_sign(he->unfolded) : ' '; in hist_entry__folded()
272 static int hierarchy_count_rows(struct hist_browser *hb, struct hist_entry *he, in hierarchy_count_rows() argument
279 if (he->leaf) in hierarchy_count_rows()
280 return callchain__count_rows(&he->sorted_chain); in hierarchy_count_rows()
282 if (he->has_no_entry) in hierarchy_count_rows()
285 node = rb_first_cached(&he->hroot_out); in hierarchy_count_rows()
[all …]
/tools/perf/ui/gtk/
Dhists.c44 static u64 he_get_##_field(struct hist_entry *he) \
46 return he->stat._field; \
51 struct hist_entry *he) \
53 return hpp__fmt(fmt, hpp, he, he_get_##_field, " %*.2f%%", \
58 static u64 he_get_acc_##_field(struct hist_entry *he) \
60 return he->stat_acc->_field; \
65 struct hist_entry *he) \
67 return hpp__fmt_acc(fmt, hpp, he, he_get_acc_##_field, " %*.2f%%", \
414 struct hist_entry *he; in perf_gtk__add_hierarchy_entries() local
425 he = rb_entry(node, struct hist_entry, rb_node); in perf_gtk__add_hierarchy_entries()
[all …]
Dgtk.h62 int hist_entry__gtk_annotate(struct hist_entry *he,
Dannotate.c243 int hist_entry__gtk_annotate(struct hist_entry *he, in hist_entry__gtk_annotate() argument
247 return symbol__gtk_annotate(&he->ms, evsel, hbt); in hist_entry__gtk_annotate()
/tools/perf/ui/
Dhist.c25 static int __hpp__fmt(struct perf_hpp *hpp, struct hist_entry *he, in __hpp__fmt() argument
30 struct hists *hists = he->hists; in __hpp__fmt()
40 percent = 100.0 * get_field(he) / total; in __hpp__fmt()
44 ret = hpp__call_print_fn(hpp, print_fn, fmt, len, get_field(he)); in __hpp__fmt()
53 list_for_each_entry(pair, &he->pairs.head, pairs.node) { in __hpp__fmt()
115 struct hist_entry *he, hpp_field_fn get_field, in hpp__fmt() argument
121 return __hpp__fmt(hpp, he, get_field, fmtstr, 1, in hpp__fmt()
130 return __hpp__fmt(hpp, he, get_field, fmtstr, len, print_fn, fmt_percent); in hpp__fmt()
134 struct hist_entry *he, hpp_field_fn get_field, in hpp__fmt_acc() argument
142 return hpp__fmt(fmt, hpp, he, get_field, fmtstr, print_fn, fmt_percent); in hpp__fmt_acc()
[all …]

12