/tools/testing/selftests/vDSO/ |
D | parse_vdso.c | 72 ELF(Word) *bucket, *chain; 178 vdso_info.chain = &hash[vdso_info.nbucket + 2]; in vdso_init_from_sysinfo_ehdr() 229 ELF(Word) chain = vdso_info.bucket[elf_hash(name) % vdso_info.nbucket]; in vdso_sym() 231 for (; chain != STN_UNDEF; chain = vdso_info.chain[chain]) { in vdso_sym() 232 ELF(Sym) *sym = &vdso_info.symtab[chain]; in vdso_sym() 247 && !vdso_match_version(vdso_info.versym[chain], in vdso_sym()
|
/tools/perf/ui/stdio/ |
D | hist.c | 38 struct callchain_list *chain, in ipchain__fprintf_graph() argument 59 fputs(callchain_list__sym_name(chain, bf, sizeof(bf), false), fp); in ipchain__fprintf_graph() 85 struct callchain_list *chain; in __callchain__fprintf_graph() local 123 list_for_each_entry(chain, &child->val, list) { in __callchain__fprintf_graph() 124 ret += ipchain__fprintf_graph(fp, child, chain, depth, in __callchain__fprintf_graph() 192 struct callchain_list *chain; in callchain__fprintf_graph() local 203 list_for_each_entry(chain, &cnode->val, list) { in callchain__fprintf_graph() 222 ret += fprintf(fp, "%s\n", callchain_list__sym_name(chain, bf, sizeof(bf), in callchain__fprintf_graph() 247 struct callchain_list *chain; in __callchain__fprintf_flat() local 257 list_for_each_entry(chain, &node->val, list) { in __callchain__fprintf_flat() [all …]
|
/tools/perf/ui/browsers/ |
D | hists.c | 154 struct callchain_list *chain; in callchain_node__count_rows_rb_tree() local 157 list_for_each_entry(chain, &child->val, list) { in callchain_node__count_rows_rb_tree() 160 folded_sign = callchain_list__folded(chain); in callchain_node__count_rows_rb_tree() 174 struct callchain_list *chain; in callchain_node__count_flat_rows() local 178 list_for_each_entry(chain, &node->parent_val, list) { in callchain_node__count_flat_rows() 181 folded_sign = callchain_list__folded(chain); in callchain_node__count_flat_rows() 188 list_for_each_entry(chain, &node->val, list) { in callchain_node__count_flat_rows() 191 folded_sign = callchain_list__folded(chain); in callchain_node__count_flat_rows() 208 struct callchain_list *chain; in callchain_node__count_rows() local 217 list_for_each_entry(chain, &node->val, list) { in callchain_node__count_rows() [all …]
|
/tools/perf/ui/gtk/ |
D | hists.c | 100 struct callchain_list *chain; in perf_gtk__add_callchain_flat() local 111 list_for_each_entry(chain, &node->parent_val, list) { in perf_gtk__add_callchain_flat() 119 callchain_list__sym_name(chain, buf, sizeof(buf), false); in perf_gtk__add_callchain_flat() 132 list_for_each_entry(chain, &node->val, list) { in perf_gtk__add_callchain_flat() 140 callchain_list__sym_name(chain, buf, sizeof(buf), false); in perf_gtk__add_callchain_flat() 162 struct callchain_list *chain; in perf_gtk__add_callchain_folded() local 172 list_for_each_entry(chain, &node->parent_val, list) { in perf_gtk__add_callchain_folded() 175 callchain_list__sym_name(chain, name, sizeof(name), false); in perf_gtk__add_callchain_folded() 188 list_for_each_entry(chain, &node->val, list) { in perf_gtk__add_callchain_folded() 191 callchain_list__sym_name(chain, name, sizeof(name), false); in perf_gtk__add_callchain_folded() [all …]
|
/tools/perf/util/ |
D | callchain.c | 226 rb_insert_callchain(struct rb_root *root, struct callchain_node *chain, in rb_insert_callchain() argument 232 u64 chain_cumul = callchain_cumul_hits(chain); in rb_insert_callchain() 244 if (rnode->hit < chain->hit) in rb_insert_callchain() 262 rb_link_node(&chain->rb_node, parent, p); in rb_insert_callchain() 263 rb_insert_color(&chain->rb_node, root); in rb_insert_callchain() 1011 struct callchain_list *chain, *new; in callchain_node__make_parent_list() local 1015 list_for_each_entry_reverse(chain, &parent->val, list) { in callchain_node__make_parent_list() 1019 *new = *chain; in callchain_node__make_parent_list() 1027 list_for_each_entry_safe_reverse(chain, new, &head, list) in callchain_node__make_parent_list() 1028 list_move_tail(&chain->list, &node->parent_val); in callchain_node__make_parent_list() [all …]
|
D | thread-stack.c | 287 void thread_stack__sample(struct thread *thread, struct ip_callchain *chain, in thread_stack__sample() argument 293 chain->nr = 1; in thread_stack__sample() 295 chain->nr = min(sz, thread->ts->cnt + 1); in thread_stack__sample() 297 chain->ips[0] = ip; in thread_stack__sample() 299 for (i = 1; i < chain->nr; i++) in thread_stack__sample() 300 chain->ips[i] = thread->ts->stack[thread->ts->cnt - i].ret_addr; in thread_stack__sample()
|
D | thread-stack.h | 86 void thread_stack__sample(struct thread *thread, struct ip_callchain *chain,
|
D | callchain.h | 250 int arch_skip_callchain_idx(struct thread *thread, struct ip_callchain *chain); 253 struct ip_callchain *chain __maybe_unused) in arch_skip_callchain_idx()
|
D | machine.c | 1747 struct ip_callchain *chain = sample->callchain; in resolve_lbr_callchain_sample() local 1748 int chain_nr = min(max_stack, (int)chain->nr), i; in resolve_lbr_callchain_sample() 1753 if (chain->ips[i] == PERF_CONTEXT_USER) in resolve_lbr_callchain_sample() 1777 ip = chain->ips[j]; in resolve_lbr_callchain_sample() 1786 ip = chain->ips[i + 1 - (j - lbr_nr)]; in resolve_lbr_callchain_sample() 1810 struct ip_callchain *chain = sample->callchain; in thread__resolve_callchain_sample() local 1811 int chain_nr = chain->nr; in thread__resolve_callchain_sample() 1828 skip_idx = arch_skip_callchain_idx(thread, chain); in thread__resolve_callchain_sample() 1862 chain->ips[first_call] >= PERF_CONTEXT_MAX) in thread__resolve_callchain_sample() 1864 else if (be[i].from < chain->ips[first_call] && in thread__resolve_callchain_sample() [all …]
|
D | session.h | 62 struct ip_callchain *chain,
|
D | intel-pt.c | 125 struct ip_callchain *chain; member 765 ptq->chain = zalloc(sz); in intel_pt_alloc_queue() 766 if (!ptq->chain) in intel_pt_alloc_queue() 845 zfree(&ptq->chain); in intel_pt_alloc_queue() 861 zfree(&ptq->chain); in intel_pt_free_queue() 1154 thread_stack__sample(ptq->thread, ptq->chain, in intel_pt_synth_instruction_sample() 1156 sample.callchain = ptq->chain; in intel_pt_synth_instruction_sample() 1214 thread_stack__sample(ptq->thread, ptq->chain, in intel_pt_synth_transaction_sample() 1216 sample.callchain = ptq->chain; in intel_pt_synth_transaction_sample()
|
/tools/perf/arch/powerpc/util/ |
D | skip-callchain-idx.c | 238 int arch_skip_callchain_idx(struct thread *thread, struct ip_callchain *chain) in arch_skip_callchain_idx() argument 246 if (chain->nr < 3) in arch_skip_callchain_idx() 249 ip = chain->ips[2]; in arch_skip_callchain_idx()
|
/tools/perf/Documentation/ |
D | itrace.txt | 8 g synthesize a call chain (use with i or x) 23 Also the call chain size (default 16, max. 1024) for instructions or
|
D | perf-top.txt | 161 Enables call-graph (stack chain/backtrace) recording. 164 Setup and enable call-graph (stack chain/backtrace) recording,
|
D | perf-timechart.txt | 94 Do call-graph (stack chain/backtrace) recording
|
D | perf-record.txt | 208 Enables call-graph (stack chain/backtrace) recording. 211 Setup and enable call-graph (stack chain/backtrace) recording, 226 platforms, such as Haswell. It can only get user call chain. It
|
D | perf-trace.txt | 121 Setup and enable call-graph (stack chain/backtrace) recording.
|
D | perf-script.txt | 209 When printing symbols do not display call chain.
|
D | intel-pt.txt | 673 g synthesize a call chain (use with i or x) 717 Also the call chain size (default 16, max. 1024) for instructions or
|
D | perf-report.txt | 210 - none: disable call chain display.
|
/tools/perf/ |
D | builtin-timechart.c | 482 struct ip_callchain *chain = sample->callchain; in cat_backtrace() local 490 if (!chain) in cat_backtrace() 499 for (i = 0; i < chain->nr; i++) { in cat_backtrace() 503 ip = chain->ips[i]; in cat_backtrace() 505 ip = chain->ips[chain->nr - i - 1]; in cat_backtrace()
|
/tools/objtool/Documentation/ |
D | stack-validation.txt | 36 chain of function call sites that led to the currently executing 176 the architecture's back chain rules. This can by done in asm code
|