| /linux/tools/perf/tests/ |
| H A D | hists_output.c | 97 struct hist_entry *he; in del_hist_entries() local 112 he = rb_entry(node, struct hist_entry, rb_node); in del_hist_entries() 114 rb_erase_cached(&he->rb_node_in, root_in); in del_hist_entries() 115 hist_entry__delete(he); in del_hist_entries() 131 #define COMM(he) (thread__comm_str(he->thread)) argument 132 #define DSO(he) (dso__short_name(map__dso(he->ms.map))) argument 133 #define SYM(he) (he->ms.sym->name) argument 134 #define CPU(he) (he->cpu) argument 135 #define PID(he) (thread__tid(he->thread)) argument 142 struct hist_entry *he; in test1() local [all …]
|
| H A D | hists_common.c | 177 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() 182 struct dso *dso = map__dso(he->ms.map); in print_hists_in() 185 i, thread__comm_str(he->thread), in print_hists_in() 187 he->ms.sym->name, he->stat.period); in print_hists_in() 206 struct hist_entry *he; in print_hists_out() local 208 he = rb_entry(node, struct hist_entry, rb_node); in print_hists_out() 210 if (!he in print_hists_out() [all...] |
| H A D | hists_link.c | 70 struct hist_entry *he; in add_hist_entries() local 92 he = hists__add_entry(hists, &al, NULL, in add_hist_entries() 94 if (he == NULL) { in add_hist_entries() 112 he = hists__add_entry(hists, &al, NULL, in add_hist_entries() 114 if (he == NULL) { in add_hist_entries() 176 struct hist_entry *he; in __validate_match() local 178 he = rb_entry(node, struct hist_entry, rb_node_in); in __validate_match() 180 if (hist_entry__has_pairs(he)) { in __validate_match() 183 he->thread, he->ms.map, he->ms.sym)) { in __validate_match() 228 struct hist_entry *he; in __validate_link() local [all …]
|
| H A D | hists_cumulate.c | 132 struct hist_entry *he; in del_hist_entries() local 147 he = rb_entry(node, struct hist_entry, rb_node); in del_hist_entries() 149 rb_erase_cached(&he->rb_node_in, root_in); in del_hist_entries() 150 hist_entry__delete(he); in del_hist_entries() 166 #define COMM(he) (thread__comm_str(he->thread)) argument 167 #define DSO(he) (dso__short_name(map__dso(he->ms.map))) argument 168 #define SYM(he) (he->ms.sym->name) argument 169 #define CPU(he) (he->cpu) argument 170 #define DEPTH(he) (he->callchain->max_depth) argument 195 struct hist_entry *he; in do_test() local [all …]
|
| /linux/tools/perf/util/ |
| H A D | hist.c | 39 struct hist_entry *he); 41 struct hist_entry *he); 43 struct hist_entry *he); 45 struct hist_entry *he); 47 struct hist_entry *he); 339 static int hists__update_mem_stat(struct hists *hists, struct hist_entry *he, in hists__update_mem_stat() argument 345 if (he->mem_stat == NULL) { in hists__update_mem_stat() 346 he->mem_stat = calloc(hists->nr_mem_stats, sizeof(*he->mem_stat)); in hists__update_mem_stat() 347 if (he->mem_stat == NULL) in hists__update_mem_stat() 356 he->mem_stat[i].entries[idx] += period; in hists__update_mem_stat() [all …]
|
| H A D | sort.c | 116 static int hist_entry__thread_snprintf(struct hist_entry *he, char *bf, in hist_entry__thread_snprintf() argument 119 const char *comm = thread__comm_str(he->thread); in hist_entry__thread_snprintf() 122 return repsep_snprintf(bf, size, "%7d:%-*.*s", thread__tid(he->thread), in hist_entry__thread_snprintf() 126 static int hist_entry__thread_filter(struct hist_entry *he, int type, const void *arg) in hist_entry__thread_filter() argument 133 return th && !RC_CHK_EQUAL(he->thread, th); in hist_entry__thread_filter() 152 static int hist_entry__tgid_snprintf(struct hist_entry *he, char *bf, in hist_entry__tgid_snprintf() argument 155 int tgid = thread__pid(he->thread); in hist_entry__tgid_snprintf() 159 if (thread__pid(he->thread) == thread__tid(he->thread)) { in hist_entry__tgid_snprintf() 160 comm = thread__comm_str(he->thread); in hist_entry__tgid_snprintf() 162 struct maps *maps = thread__maps(he->thread); in hist_entry__tgid_snprintf() [all …]
|
| H A D | block-info.c | 128 int block_info__process_sym(struct hist_entry *he, struct block_hist *bh, in block_info__process_sym() argument 137 if (!he->ms.map || !he->ms.sym) in block_info__process_sym() 141 al.map = he->ms.map; in block_info__process_sym() 142 al.sym = he->ms.sym; in block_info__process_sym() 144 notes = symbol__annotation(he->ms.sym); in block_info__process_sym() 148 for (unsigned int i = 0; i < symbol__size(he->ms.sym); i++) { in block_info__process_sym() 157 init_block_info(bi, he->ms.sym, &ch[i], i, in block_info__process_sym() 160 hists_to_evsel(he->hists)); in block_info__process_sym() 212 struct hist_entry *he) in block_total_cycles_pct_entry() argument 215 struct block_info *bi = he->block_info; in block_total_cycles_pct_entry() [all …]
|
| H A D | hist.h | 160 struct hist_entry *he; member 321 static __pure inline bool hist_entry__has_callchains(struct hist_entry *he) in hist_entry__has_callchains() argument 323 return he->callchain_size != 0; in hist_entry__has_callchains() 326 static inline bool hist_entry__has_pairs(struct hist_entry *he) in hist_entry__has_pairs() argument 328 return !list_empty(&he->pairs.node); in hist_entry__has_pairs() 331 static inline struct hist_entry *hist_entry__next_pair(struct hist_entry *he) in hist_entry__next_pair() argument 333 if (hist_entry__has_pairs(he)) in hist_entry__next_pair() 334 return list_entry(he->pairs.node.next, struct hist_entry, pairs.node); in hist_entry__next_pair() 339 struct hist_entry *he) in hist_entry__add_pair() argument 341 list_add_tail(&pair->pairs.node, &he->pairs.head); in hist_entry__add_pair() [all …]
|
| H A D | sort.h | 123 int (*se_snprintf)(struct hist_entry *he, char *bf, size_t size, 125 int (*se_filter)(struct hist_entry *he, int type, const void *arg); 126 void (*se_init)(struct hist_entry *he); 160 char *hist_entry__srcline(struct hist_entry *he);
|
| H A D | annotate.c | 588 int hist_entry__inc_addr_samples(struct hist_entry *he, struct perf_sample *sample, in hist_entry__inc_addr_samples() argument 591 return symbol__inc_addr_samples(&he->ms, evsel, ip, sample); in hist_entry__inc_addr_samples() 764 __hist_entry__get_data_type(struct hist_entry *he, struct arch *arch, 784 struct symbol *sym = apd->he->ms.sym; in annotation_line__print() 840 data->he.period); in annotation_line__print() 843 data->he.nr_samples); in annotation_line__print() 856 data_type = __hist_entry__get_data_type(apd->he, apd->arch, in annotation_line__print() 929 data->he.period = period; in calc_percent() 930 data->he.nr_samples = hits; in calc_percent() 1218 int hist_entry__annotate_printf(struct hist_entry *he, struct evsel *evsel) in hist_entry__annotate_printf() argument [all …]
|
| /linux/net/netfilter/ |
| H A D | nft_set_hash.c | 54 const struct nft_rhash_elem *he = data; in nft_rhash_obj() 56 return jhash(nft_set_ext_key(&he->ext), len, seed); in nft_rhash_obj() 63 const struct nft_rhash_elem *he = ptr; in nft_rhash_cmp() 65 if (memcmp(nft_set_ext_key(&he->ext), x->key, x->set->klen)) in nft_rhash_cmp() 67 if (nft_set_elem_is_dead(&he->ext)) in nft_rhash_cmp() 69 if (__nft_set_elem_expired(&he->ext, x->tstamp)) in nft_rhash_cmp() 71 if (!nft_set_elem_active(&he->ext, x->genmask)) in nft_rhash_cmp() 90 const struct nft_rhash_elem *he; in nft_rhash_lookup() 98 he = rhashtable_lookup(&priv->ht, &arg, nft_rhash_params); in nft_rhash_lookup() 99 if (he ! in nft_rhash_lookup() 53 const struct nft_rhash_elem *he = data; nft_rhash_obj() local 62 const struct nft_rhash_elem *he = ptr; nft_rhash_cmp() local 89 const struct nft_rhash_elem *he; nft_rhash_lookup() local 109 struct nft_rhash_elem *he; nft_rhash_get() local 129 struct nft_rhash_elem *he, *prev; nft_rhash_update() local 173 struct nft_rhash_elem *he = nft_elem_priv_cast(elem->priv); nft_rhash_insert() local 197 struct nft_rhash_elem *he = nft_elem_priv_cast(elem_priv); nft_rhash_activate() local 206 struct nft_rhash_elem *he = nft_elem_priv_cast(elem_priv); nft_rhash_flush() local 216 struct nft_rhash_elem *he; nft_rhash_deactivate() local 238 struct nft_rhash_elem *he = nft_elem_priv_cast(elem_priv); nft_rhash_remove() local 253 struct nft_rhash_elem *he; nft_rhash_delete() local 268 struct nft_rhash_elem *he; nft_rhash_walk() local 319 struct nft_rhash_elem *he; nft_rhash_gc() local 450 struct nft_rhash_elem *he = ptr; nft_rhash_elem_destroy() local 511 const struct nft_hash_elem *he; nft_hash_lookup() local 530 struct nft_hash_elem *he; nft_hash_get() local 550 const struct nft_hash_elem *he; nft_hash_lookup_fast() local 586 struct nft_hash_elem *this = nft_elem_priv_cast(elem->priv), *he; nft_hash_insert() local 607 struct nft_hash_elem *he = nft_elem_priv_cast(elem_priv); nft_hash_activate() local 616 struct nft_hash_elem *he = nft_elem_priv_cast(elem_priv); nft_hash_flush() local 625 struct nft_hash_elem *this = nft_elem_priv_cast(elem->priv), *he; nft_hash_deactivate() local 646 struct nft_hash_elem *he = nft_elem_priv_cast(elem_priv); nft_hash_remove() local 655 struct nft_hash_elem *he; nft_hash_walk() local 696 struct nft_hash_elem *he; nft_hash_destroy() local [all...] |
| /linux/tools/perf/ |
| H A D | builtin-diff.c | 273 static double period_percent(struct hist_entry *he, u64 period) in period_percent() argument 275 u64 total = hists__total_period(he->hists); in period_percent() 280 static double compute_delta(struct hist_entry *he, struct hist_entry *pair) in compute_delta() argument 282 double old_percent = period_percent(he, he->stat.period); in compute_delta() 290 static double compute_ratio(struct hist_entry *he, struct hist_entry *pair) in compute_ratio() argument 292 double old_period = he->stat.period ?: 1; in compute_ratio() 300 static s64 compute_wdiff(struct hist_entry *he, struct hist_entry *pair) in compute_wdiff() argument 302 u64 old_period = he->stat.period; in compute_wdiff() 312 static int formula_delta(struct hist_entry *he, struct hist_entry *pair, in formula_delta() argument 315 u64 he_total = he->hists->stats.total_period; in formula_delta() [all …]
|
| H A D | builtin-c2c.c | 82 struct hist_entry he; member 165 return &c2c_he->he; in c2c_he_zalloc() 174 static void c2c_he_free(void *he) in c2c_he_free() argument 178 c2c_he = container_of(he, struct c2c_hist_entry, he); in c2c_he_free() 202 he__get_c2c_hists(struct hist_entry *he, in he__get_c2c_hists() argument 211 c2c_he = container_of(he, struct c2c_hist_entry, he); in he__get_c2c_hists() 287 struct hist_entry *he; in process_sample_event() local 325 he = hists__add_entry_ops(&c2c_hists->hists, &c2c_entry_ops, in process_sample_event() 328 if (he == NULL) in process_sample_event() 331 c2c_he = container_of(he, struct c2c_hist_entry, he); in process_sample_event() [all …]
|
| H A D | builtin-kvm.c | 95 struct hist_entry *he); 118 struct hist_entry *he) in ev_name_entry() argument 120 int width = fmt_width(fmt, hpp, he->hists); in ev_name_entry() 122 return scnprintf(hpp->buf, hpp->size, "%*s", width, he->kvm_info->name); in ev_name_entry() 142 event_left = container_of(left, struct kvm_event, he); \ 143 event_right = container_of(right, struct kvm_event, he); \ 159 struct hist_entry *he) \ 162 int width = fmt_width(fmt, hpp, he->hists); \ 165 event = container_of(he, struct kvm_event, he); \ 209 struct hist_entry *he) in ev_entry_mean() argument [all …]
|
| H A D | builtin-annotate.c | 177 struct hist_entry *he = iter->he; in hist_iter__branch_callback() local 183 bi = he->branch_info; in hist_iter__branch_callback() 244 struct hist_entry *he; in evsel__add_sample() local 275 he = hists__add_entry(hists, al, NULL, NULL, NULL, NULL, sample, true); in evsel__add_sample() 276 if (he == NULL) in evsel__add_sample() 279 ret = hist_entry__inc_addr_samples(he, sample, evsel, al->addr); in evsel__add_sample() 324 static int hist_entry__stdio_annotate(struct hist_entry *he, in hist_entry__stdio_annotate() argument 329 return hist_entry__tty_annotate2(he, evsel); in hist_entry__stdio_annotate() 331 return hist_entry__tty_annotate(he, evsel); in hist_entry__stdio_annotate() 421 struct hist_entry *he = rb_entry(nd, struct hist_entry, rb_node); in hists__find_annotations() local [all …]
|
| H A D | builtin-top.c | 112 static int perf_top__parse_source(struct perf_top *top, struct hist_entry *he) in perf_top__parse_source() argument 121 if (!he || !he->ms.sym) in perf_top__parse_source() 124 evsel = hists_to_evsel(he->hists); in perf_top__parse_source() 126 sym = he->ms.sym; in perf_top__parse_source() 127 map = he->ms.map; in perf_top__parse_source() 151 err = symbol__annotate(&he->ms, evsel, NULL); in perf_top__parse_source() 153 top->sym_filter_entry = he; in perf_top__parse_source() 156 symbol__strerror_disassemble(&he->ms, err, msg, sizeof(msg)); in perf_top__parse_source() 164 static void __zero_source_counters(struct hist_entry *he) in __zero_source_counters() argument 166 struct symbol *sym = he->ms.sym; in __zero_source_counters() [all …]
|
| /linux/Documentation/core-api/ |
| H A D | errseq.rst | 49 Let me tell you a story about a worker drone. Now, he's a good worker 50 overall, but the company is a little...management heavy. He has to 52 from out of town and he's sure to test the poor fellow too. 54 They're all handing him work to do -- so much he can't keep track of who 56 just want to know when he's finished all of the work they've handed him so 57 far and whether he made any mistakes since they last asked. 59 He might have made the mistake on work they didn't actually hand him, 60 but he can't keep track of things at that level of detail, all he can 61 remember is the most recent mistake that he made. 90 whether he made any mistakes on any of it:: [all …]
|
| /linux/tools/perf/ui/browsers/ |
| H A D | hists.c | 71 struct hist_entry *he = in hist_browser__get_folding() local 74 if (he->leaf && he->unfolded) in hist_browser__get_folding() 75 unfolded_rows += he->nr_rows; in hist_browser__get_folding() 162 static char hist_entry__folded(const struct hist_entry *he) in hist_entry__folded() argument 164 return he->has_children ? tree__folded_sign(he->unfolded) : ' '; in hist_entry__folded() 273 static int hierarchy_count_rows(struct hist_browser *hb, struct hist_entry *he, in hierarchy_count_rows() argument 280 if (he->leaf) in hierarchy_count_rows() 281 return callchain__count_rows(&he->sorted_chain); in hierarchy_count_rows() 283 if (he->has_no_entry) in hierarchy_count_rows() 286 node = rb_first_cached(&he->hroot_out); in hierarchy_count_rows() [all …]
|
| H A D | annotate-data.c | 155 struct hist_entry *he = browser->b.priv; in annotated_data_browser__collect_entries() local 156 struct annotated_data_type *adt = he->mem_type; in annotated_data_browser__collect_entries() 157 struct evsel *evsel = hists_to_evsel(he->hists); in annotated_data_browser__collect_entries() 336 struct hist_entry *he = uib->priv; in browser__show() local 337 struct annotated_data_type *adt = he->mem_type; in browser__show() 343 adt->self.type_name, he->stat.nr_events); in browser__show() 392 struct hist_entry *he = uib->priv; in browser__write() local 393 struct annotated_data_type *adt = he->mem_type; in browser__write() 394 struct evsel *leader = hists_to_evsel(he->hists); in browser__write() 570 int hist_entry__annotate_data_tui(struct hist_entry *he, struct evsel *evsel, in hist_entry__annotate_data_tui() argument [all …]
|
| /linux/tools/perf/ui/stdio/ |
| H A D | hist.c | 385 static size_t hist_entry_callchain__fprintf(struct hist_entry *he, in hist_entry_callchain__fprintf() argument 389 u64 parent_samples = he->stat.period; in hist_entry_callchain__fprintf() 392 parent_samples = he->stat_acc->period; 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_graph(fp, &he->sorted_chain, total_samples, in hist_entry_callchain__fprintf() 404 return callchain__fprintf_flat(fp, &he->sorted_chain, total_samples); in hist_entry_callchain__fprintf() 407 return callchain__fprintf_folded(fp, &he->sorted_chain, total_samples); in hist_entry_callchain__fprintf() 418 int __hist_entry__snprintf(struct hist_entry *he, struct perf_hpp *hpp, in __hist_entry__snprintf() argument 427 if (symbol_conf.exclude_other && !he->parent) in __hist_entry__snprintf() 431 if (perf_hpp__should_skip(fmt, he->hists)) in __hist_entry__snprintf() [all …]
|
| /linux/tools/perf/ui/gtk/ |
| H A D | hists.c | 44 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 …]
|
| /linux/tools/perf/ui/ |
| H A D | hist.c | 58 static int __hpp__fmt(struct perf_hpp *hpp, struct hist_entry *he, in __hpp__fmt() argument 63 struct hists *hists = he->hists; in __hpp__fmt() 79 values[0].val = get_field(he); in __hpp__fmt() 80 values[0].samples = he->stat.nr_events; in __hpp__fmt() 88 list_for_each_entry(pair, &he->pairs.head, pairs.node) { in __hpp__fmt() 123 struct hist_entry *he, hpp_field_fn get_field, in hpp__fmt() argument 130 return __hpp__fmt(hpp, he, get_field, fmtstr, 1, in hpp__fmt() 139 return __hpp__fmt(hpp, he, get_field, fmtstr, len, print_fn, fmtype); in hpp__fmt() 143 struct hist_entry *he, hpp_field_fn get_field, in hpp__fmt_acc() argument 152 return hpp__fmt(fmt, hpp, he, get_field, fmtstr, print_fn, fmtype); in hpp__fmt_acc() [all …]
|
| /linux/Documentation/ABI/testing/ |
| H A D | sysfs-bus-coresight-devices-ultra_smb | 4 Contact: Junhao He <hejunhao3@huawei.com> 11 Contact: Junhao He <hejunhao3@huawei.com> 17 Contact: Junhao He <hejunhao3@huawei.com> 24 Contact: Junhao He <hejunhao3@huawei.com> 30 Contact: Junhao He <hejunhao3@huawei.com>
|
| /linux/kernel/locking/ |
| H A D | qspinlock_paravirt.h | 203 #define for_each_hash_entry(he, offset, hash) \ argument 204 for (hash &= ~(PV_HE_PER_LINE - 1), he = &pv_lock_hash[hash], offset = 0; \ 206 offset++, he = &pv_lock_hash[(hash + offset) & ((1 << pv_lock_hash_bits) - 1)]) 211 struct pv_hash_entry *he; in pv_hash() local 214 for_each_hash_entry(he, offset, hash) { in pv_hash() 217 if (try_cmpxchg(&he->lock, &old, lock)) { in pv_hash() 218 WRITE_ONCE(he->node, node); in pv_hash() 220 return &he->lock; in pv_hash() 239 struct pv_hash_entry *he; in pv_unhash() local 242 for_each_hash_entry(he, offset, hash) { in pv_unhash() [all …]
|
| /linux/drivers/net/wireless/mediatek/mt76/ |
| H A D | mt76_connac_mac.c | 769 struct ieee80211_radiotap_he *he, in mt76_connac2_mac_decode_he_radiotap_ru() argument 810 he->data1 |= HE_BITS(DATA1_BW_RU_ALLOC_KNOWN); in mt76_connac2_mac_decode_he_radiotap_ru() 811 he->data2 |= HE_BITS(DATA2_RU_OFFSET_KNOWN) | in mt76_connac2_mac_decode_he_radiotap_ru() 886 struct ieee80211_radiotap_he *he; in mt76_connac2_mac_decode_he_radiotap() local 890 he = skb_push(skb, sizeof(known)); in mt76_connac2_mac_decode_he_radiotap() 891 memcpy(he, &known, sizeof(known)); in mt76_connac2_mac_decode_he_radiotap() 893 he->data3 = HE_PREP(DATA3_BSS_COLOR, BSS_COLOR, rxv[14]) | in mt76_connac2_mac_decode_he_radiotap() 895 he->data4 = HE_PREP(DATA4_SU_MU_SPTL_REUSE, SR_MASK, rxv[11]); in mt76_connac2_mac_decode_he_radiotap() 896 he->data5 = HE_PREP(DATA5_PE_DISAMBIG, PE_DISAMBIG, rxv[2]) | in mt76_connac2_mac_decode_he_radiotap() 900 he->data5 |= HE_BITS(DATA5_TXBF); in mt76_connac2_mac_decode_he_radiotap() [all …]
|