include/linux/bpf_verifier.h
726
struct bpf_scc_callchain callchain;
include/linux/perf_event.h
1331
struct perf_callchain_entry *callchain;
include/linux/perf_event.h
1385
data->callchain = perf_callchain(event, regs);
include/linux/perf_event.h
1386
size += data->callchain->nr;
kernel/bpf/liveness.c
109
struct callchain callchain;
kernel/bpf/liveness.c
140
struct callchain *callchain, u32 frameno)
kernel/bpf/liveness.c
145
memset(callchain, 0, sizeof(*callchain));
kernel/bpf/liveness.c
147
callchain->sp_starts[i] = subprog_info[st->frame[i]->subprogno].start;
kernel/bpf/liveness.c
149
callchain->callsites[i] = st->frame[i + 1]->callsite;
kernel/bpf/liveness.c
151
callchain->curframe = frameno;
kernel/bpf/liveness.c
152
callchain->callsites[callchain->curframe] = callchain->sp_starts[callchain->curframe];
kernel/bpf/liveness.c
155
static u32 hash_callchain(struct callchain *callchain)
kernel/bpf/liveness.c
157
return jhash2(callchain->callsites, callchain->curframe, 0);
kernel/bpf/liveness.c
160
static bool same_callsites(struct callchain *a, struct callchain *b)
kernel/bpf/liveness.c
178
struct callchain *callchain)
kernel/bpf/liveness.c
185
key = hash_callchain(callchain);
kernel/bpf/liveness.c
187
if (same_callsites(&result->callchain, callchain))
kernel/bpf/liveness.c
190
subprog = bpf_find_containing_subprog(env, callchain->sp_starts[callchain->curframe]);
kernel/bpf/liveness.c
202
memcpy(&result->callchain, callchain, sizeof(*callchain));
kernel/bpf/liveness.c
212
struct callchain callchain;
kernel/bpf/liveness.c
214
compute_callchain(env, st, &callchain, frameno);
kernel/bpf/liveness.c
215
return __lookup_instance(env, &callchain);
kernel/bpf/liveness.c
236
for (i = 0; i <= instance->callchain.curframe; i++)
kernel/bpf/liveness.c
250
return insn_idx - instance->callchain.sp_starts[instance->callchain.curframe];
kernel/bpf/liveness.c
334
for (i = 0; i <= instance->callchain.curframe; i++)
kernel/bpf/liveness.c
367
curframe = instance->callchain.curframe;
kernel/bpf/liveness.c
405
static char *fmt_callchain(struct bpf_verifier_env *env, struct callchain *callchain)
kernel/bpf/liveness.c
412
for (i = 0; i <= callchain->curframe; i++)
kernel/bpf/liveness.c
413
buf += snprintf(buf, buf_end - buf, "%s%d", i ? "," : "", callchain->callsites[i]);
kernel/bpf/liveness.c
418
static void log_mask_change(struct bpf_verifier_env *env, struct callchain *callchain,
kernel/bpf/liveness.c
427
bpf_log(&env->log, "%s frame %d insn %d ", fmt_callchain(env, callchain), frame, insn_idx);
kernel/bpf/liveness.c
513
struct callchain callchain = instance->callchain;
kernel/bpf/liveness.c
516
callchain.callsites[callchain.curframe] = 0;
kernel/bpf/liveness.c
517
callchain.sp_starts[callchain.curframe] = 0;
kernel/bpf/liveness.c
518
callchain.curframe--;
kernel/bpf/liveness.c
519
callchain.callsites[callchain.curframe] = callchain.sp_starts[callchain.curframe];
kernel/bpf/liveness.c
520
return __lookup_instance(env, &callchain);
kernel/bpf/liveness.c
523
static u32 callchain_subprog_start(struct callchain *callchain)
kernel/bpf/liveness.c
525
return callchain->sp_starts[callchain->curframe];
kernel/bpf/liveness.c
535
struct callchain *callchain = &instance->callchain;
kernel/bpf/liveness.c
541
this_subprog_start = callchain_subprog_start(callchain);
kernel/bpf/liveness.c
545
callsite = callchain->callsites[callchain->curframe - 1];
kernel/bpf/liveness.c
548
for (frame = 0; frame < callchain->curframe; frame++) {
kernel/bpf/liveness.c
599
insn_idx == callchain_subprog_start(&instance->callchain) ||
kernel/bpf/liveness.c
601
log_mask_change(env, &instance->callchain, "live",
kernel/bpf/liveness.c
603
log_mask_change(env, &instance->callchain, "written",
kernel/bpf/liveness.c
615
struct callchain *callchain = &instance->callchain;
kernel/bpf/liveness.c
622
this_subprog_start = callchain_subprog_start(callchain);
kernel/bpf/liveness.c
628
for (frame = 0; frame <= callchain->curframe; frame++) {
kernel/bpf/liveness.c
647
for (frame = 0; frame <= instance->callchain.curframe; frame++) {
kernel/bpf/liveness.c
658
fmt_callchain(env, callchain), cnt);
kernel/bpf/liveness.c
661
if (callchain->curframe > 0) {
kernel/bpf/liveness.c
744
callsite = curframe_instance->callchain.callsites[i];
kernel/bpf/stackmap.c
389
trace = ctx->data->callchain;
kernel/bpf/stackmap.c
618
trace = ctx->data->callchain;
kernel/bpf/verifier.c
1851
struct bpf_scc_callchain *callchain)
kernel/bpf/verifier.c
1855
memset(callchain, 0, sizeof(*callchain));
kernel/bpf/verifier.c
1860
callchain->scc = scc;
kernel/bpf/verifier.c
1863
callchain->callsites[i] = insn_idx;
kernel/bpf/verifier.c
1873
struct bpf_scc_callchain *callchain)
kernel/bpf/verifier.c
1875
struct bpf_scc_info *info = env->scc_info[callchain->scc];
kernel/bpf/verifier.c
1882
if (memcmp(callchain, &visits[i].callchain, sizeof(*callchain)) == 0)
kernel/bpf/verifier.c
1892
struct bpf_scc_callchain *callchain)
kernel/bpf/verifier.c
1899
scc = callchain->scc;
kernel/bpf/verifier.c
1910
memcpy(&visit->callchain, callchain, sizeof(*callchain));
kernel/bpf/verifier.c
1915
static char *format_callchain(struct bpf_verifier_env *env, struct bpf_scc_callchain *callchain)
kernel/bpf/verifier.c
1921
for (i = 0; i < ARRAY_SIZE(callchain->callsites); i++) {
kernel/bpf/verifier.c
1922
if (!callchain->callsites[i])
kernel/bpf/verifier.c
1925
callchain->callsites[i]);
kernel/bpf/verifier.c
1927
delta += snprintf(buf + delta, TMP_STR_BUF_LEN - delta, "%u)", callchain->scc);
kernel/bpf/verifier.c
1937
struct bpf_scc_callchain *callchain = &env->callchain_buf;
kernel/bpf/verifier.c
1940
if (!compute_scc_callchain(env, st, callchain))
kernel/bpf/verifier.c
1942
visit = scc_visit_lookup(env, callchain);
kernel/bpf/verifier.c
1943
visit = visit ?: scc_visit_alloc(env, callchain);
kernel/bpf/verifier.c
1949
verbose(env, "SCC enter %s\n", format_callchain(env, callchain));
kernel/bpf/verifier.c
1962
struct bpf_scc_callchain *callchain = &env->callchain_buf;
kernel/bpf/verifier.c
1965
if (!compute_scc_callchain(env, st, callchain))
kernel/bpf/verifier.c
1967
visit = scc_visit_lookup(env, callchain);
kernel/bpf/verifier.c
1983
format_callchain(env, callchain));
kernel/bpf/verifier.c
1991
verbose(env, "SCC exit %s\n", format_callchain(env, callchain));
kernel/bpf/verifier.c
2006
struct bpf_scc_callchain *callchain = &env->callchain_buf;
kernel/bpf/verifier.c
2009
if (!compute_scc_callchain(env, st, callchain)) {
kernel/bpf/verifier.c
2014
visit = scc_visit_lookup(env, callchain);
kernel/bpf/verifier.c
2017
format_callchain(env, callchain));
kernel/bpf/verifier.c
2021
verbose(env, "SCC backedge %s\n", format_callchain(env, callchain));
kernel/bpf/verifier.c
2037
struct bpf_scc_callchain *callchain = &env->callchain_buf;
kernel/bpf/verifier.c
2040
if (!compute_scc_callchain(env, st, callchain))
kernel/bpf/verifier.c
2042
visit = scc_visit_lookup(env, callchain);
kernel/events/core.c
8224
size += data->callchain->nr;
kernel/events/core.c
8226
__output_copy(handle, data->callchain, size);
kernel/events/core.c
8514
struct perf_callchain_entry *callchain;
kernel/events/core.c
8527
callchain = get_perf_callchain(regs, kernel, user, max_stack,
kernel/events/core.c
8530
return callchain ?: &__empty_callchain;
tools/perf/builtin-c2c.c
2902
struct callchain_param *callchain = opt->value;
tools/perf/builtin-c2c.c
2904
callchain->enabled = !unset;
tools/perf/builtin-c2c.c
2910
callchain->mode = CHAIN_NONE;
tools/perf/builtin-inject.c
430
for (i = 0; i < sample->callchain->nr; i++) {
tools/perf/builtin-inject.c
431
inject->raw_callchain->ips[i] = sample->callchain->ips[i];
tools/perf/builtin-inject.c
432
if (sample->callchain->ips[i] == PERF_CONTEXT_USER) {
tools/perf/builtin-inject.c
453
sample->callchain = inject->raw_callchain;
tools/perf/builtin-inject.c
461
sample_size += (sample->callchain->nr + 1) * sizeof(u64);
tools/perf/builtin-kwork.c
699
if (!kwork->show_callchain || sample->callchain == NULL)
tools/perf/builtin-lock.c
955
for (i = 0, c = 0; i < sample->callchain->nr && c < max_stack; i++) {
tools/perf/builtin-lock.c
956
u64 ip = sample->callchain->ips[i];
tools/perf/builtin-record.c
2979
static void callchain_debug(struct callchain_param *callchain)
tools/perf/builtin-record.c
2983
pr_debug("callchain: type %s\n", str[callchain->record_mode]);
tools/perf/builtin-record.c
2985
if (callchain->record_mode == CALLCHAIN_DWARF)
tools/perf/builtin-record.c
2987
callchain->dump_size);
tools/perf/builtin-record.c
2991
struct callchain_param *callchain,
tools/perf/builtin-record.c
2995
callchain->enabled = !unset;
tools/perf/builtin-record.c
2999
callchain->record_mode = CALLCHAIN_NONE;
tools/perf/builtin-record.c
3004
ret = parse_callchain_record_opt(arg, callchain);
tools/perf/builtin-record.c
3007
if (callchain->record_mode == CALLCHAIN_DWARF &&
tools/perf/builtin-record.c
3010
callchain_debug(callchain);
tools/perf/builtin-record.c
3027
struct callchain_param *callchain = opt->value;
tools/perf/builtin-record.c
3029
callchain->enabled = true;
tools/perf/builtin-record.c
3031
if (callchain->record_mode == CALLCHAIN_NONE)
tools/perf/builtin-record.c
3032
callchain->record_mode = CALLCHAIN_FP;
tools/perf/builtin-record.c
3034
callchain_debug(callchain);
tools/perf/builtin-report.c
1183
struct callchain_param *callchain = opt->value;
tools/perf/builtin-report.c
1185
callchain->enabled = !unset;
tools/perf/builtin-report.c
1191
callchain->mode = CHAIN_NONE;
tools/perf/builtin-report.c
1585
if ((itrace_synth_opts.callchain || itrace_synth_opts.add_callchain) &&
tools/perf/builtin-report.c
378
if (session->itrace_synth_opts->callchain ||
tools/perf/builtin-sched.c
2342
if (!sched->show_callchain || sample->callchain == NULL) {
tools/perf/builtin-sched.c
2393
callchain_init(&itr->callchain);
tools/perf/builtin-sched.c
2492
if (!sched->show_callchain || sample->callchain == NULL)
tools/perf/builtin-sched.c
2888
callchain_append(&itr->callchain, &itr->cursor, t - tprev);
tools/perf/builtin-sched.c
289
struct callchain_root callchain;
tools/perf/builtin-sched.c
3153
callchain_param.sort(&itr->sorted_root.rb_root, &itr->callchain,
tools/perf/builtin-script.c
1680
if (symbol_conf.use_callchain && sample->callchain) {
tools/perf/builtin-script.c
2503
if (symbol_conf.use_callchain && sample->callchain) {
tools/perf/builtin-script.c
2787
if (symbol_conf.use_callchain && sample->callchain) {
tools/perf/builtin-script.c
4248
if ((itrace_synth_opts.callchain || itrace_synth_opts.add_callchain) &&
tools/perf/builtin-timechart.c
501
struct ip_callchain *chain = sample->callchain;
tools/perf/builtin-top.c
1079
static int callchain_param__setup_sample_type(struct callchain_param *callchain)
tools/perf/builtin-top.c
1081
if (callchain->mode != CHAIN_NONE) {
tools/perf/builtin-top.c
1082
if (callchain_register_param(callchain) < 0) {
tools/perf/builtin-top.c
1399
struct callchain_param *callchain = opt->value;
tools/perf/builtin-top.c
1401
callchain->enabled = !unset;
tools/perf/builtin-top.c
1402
callchain->record_mode = CALLCHAIN_FP;
tools/perf/builtin-top.c
1409
callchain->record_mode = CALLCHAIN_NONE;
tools/perf/builtin-trace.c
2966
if (sample->callchain) {
tools/perf/builtin-trace.c
3266
if (sample->callchain) {
tools/perf/builtin-trace.c
3377
if (sample->callchain) {
tools/perf/tests/hists_cumulate.c
104
sample.callchain = (struct ip_callchain *)fake_callchains[i];
tools/perf/tests/hists_cumulate.c
170
#define DEPTH(he) (he->callchain->max_depth)
tools/perf/tests/hists_cumulate.c
235
root = &he->callchain->node.rb_root;
tools/perf/tests/sample-parsing.c
102
COMP(callchain->nr);
tools/perf/tests/sample-parsing.c
103
for (i = 0; i < s1->callchain->nr; i++)
tools/perf/tests/sample-parsing.c
104
COMP(callchain->ips[i]);
tools/perf/tests/sample-parsing.c
219
struct ip_callchain callchain;
tools/perf/tests/sample-parsing.c
221
} callchain = {
tools/perf/tests/sample-parsing.c
261
.callchain = &callchain.callchain,
tools/perf/ui/browsers/hists.c
2987
callchain_param.sort(&he->sorted_chain, he->callchain,
tools/perf/ui/hist.c
335
ret = b->callchain->max_depth - a->callchain->max_depth;
tools/perf/util/arm64-frame-pointer-unwind-support.c
56
regs->cache_regs[PERF_REG_ARM64_PC] = sample->callchain->ips[usr_idx+1];
tools/perf/util/auxtrace.c
1661
synth_opts->callchain = true;
tools/perf/util/auxtrace.h
134
bool callchain;
tools/perf/util/callchain.c
1129
if (sample->callchain == NULL && !symbol_conf.show_branchflag_count)
tools/perf/util/callchain.c
1142
if ((!symbol_conf.use_callchain || sample->callchain == NULL) &&
tools/perf/util/callchain.c
1145
return callchain_append(he->callchain, get_tls_callchain_cursor(), sample->period);
tools/perf/util/callchain.c
1853
u64 nr_orig = sample_orig->callchain->nr - 1;
tools/perf/util/callchain.c
1854
u64 nr_deferred = sample_callchain->callchain->nr;
tools/perf/util/callchain.c
1855
struct ip_callchain *callchain;
tools/perf/util/callchain.c
1857
if (sample_orig->callchain->nr < 2) {
tools/perf/util/callchain.c
1862
callchain = calloc(1 + nr_orig + nr_deferred, sizeof(u64));
tools/perf/util/callchain.c
1863
if (callchain == NULL) {
tools/perf/util/callchain.c
1868
callchain->nr = nr_orig + nr_deferred;
tools/perf/util/callchain.c
1870
memcpy(callchain->ips, sample_orig->callchain->ips, nr_orig * sizeof(u64));
tools/perf/util/callchain.c
1872
memcpy(&callchain->ips[nr_orig], sample_callchain->callchain->ips,
tools/perf/util/callchain.c
1875
sample_orig->callchain = callchain;
tools/perf/util/callchain.h
249
struct callchain_param *callchain,
tools/perf/util/cs-etm.c
3453
etm->synth_opts.callchain = false;
tools/perf/util/data-convert-bt.c
531
struct ip_callchain *callchain)
tools/perf/util/data-convert-bt.c
535
unsigned int nr_elements = callchain->nr;
tools/perf/util/data-convert-bt.c
579
((u64 *)(callchain->ips))[i]);
tools/perf/util/data-convert-bt.c
855
event, sample->callchain);
tools/perf/util/data-convert-json.c
203
if (sample->callchain) {
tools/perf/util/data-convert-json.c
208
for (i = 0; i < sample->callchain->nr; ++i) {
tools/perf/util/data-convert-json.c
209
u64 ip = sample->callchain->ips[i];
tools/perf/util/db-export.c
221
if (!symbol_conf.use_callchain || !sample->callchain)
tools/perf/util/dlfilter.c
554
if (sample->callchain) {
tools/perf/util/dlfilter.c
555
d_sample.raw_callchain_nr = sample->callchain->nr;
tools/perf/util/dlfilter.c
556
d_sample.raw_callchain = (__u64 *)sample->callchain->ips;
tools/perf/util/evlist.h
181
void evlist__config(struct evlist *evlist, struct record_opts *opts, struct callchain_param *callchain);
tools/perf/util/evsel.c
1494
struct callchain_param *callchain)
tools/perf/util/evsel.c
1578
if (callchain && callchain->enabled && !evsel->no_aux_samples)
tools/perf/util/evsel.c
1579
evsel__config_callchain(evsel, opts, callchain);
tools/perf/util/evsel.c
1635
attr->defer_output = track && callchain && callchain->defer;
tools/perf/util/evsel.c
3193
data->callchain = (struct ip_callchain *)array++;
tools/perf/util/evsel.c
3194
OVERFLOW_CHECK(array, data->callchain->nr * sizeof(u64), max_size);
tools/perf/util/evsel.c
3195
data->ip = data->callchain->ips[1];
tools/perf/util/evsel.c
3196
array += data->callchain->nr;
tools/perf/util/evsel.c
3232
data->callchain = (struct ip_callchain *)&event->callchain_deferred.nr;
tools/perf/util/evsel.c
3233
if (data->callchain->nr > max_callchain_nr)
tools/perf/util/evsel.c
3370
data->callchain = (struct ip_callchain *)array++;
tools/perf/util/evsel.c
3371
callchain_nr = data->callchain->nr;
tools/perf/util/evsel.c
3382
data->callchain->ips[callchain_nr - 2] == PERF_CONTEXT_USER_DEFERRED) {
tools/perf/util/evsel.c
3383
data->deferred_cookie = data->callchain->ips[callchain_nr - 1];
tools/perf/util/evsel.h
289
struct callchain_param *callchain);
tools/perf/util/evsel.h
291
struct callchain_param *callchain);
tools/perf/util/evsel_fprintf.c
134
if (sample->callchain) {
tools/perf/util/hist.c
1284
callchain_append(he->callchain, &cursor, sample->period);
tools/perf/util/hist.c
1489
free_callchain(he->callchain);
tools/perf/util/hist.c
1733
new_he->callchain,
tools/perf/util/hist.c
1734
he->callchain) < 0)
tools/perf/util/hist.c
1778
if (callchain_merge(cursor, iter->callchain, he->callchain) < 0)
tools/perf/util/hist.c
2010
callchain_param.sort(&he->sorted_chain, he->callchain,
tools/perf/util/hist.c
2035
callchain_param.sort(&he->sorted_chain, he->callchain,
tools/perf/util/hist.c
415
decay_callchain(he->callchain);
tools/perf/util/hist.c
568
callchain_init(he->callchain);
tools/perf/util/hist.h
318
struct callchain_root callchain[0]; /* must be last member */
tools/perf/util/intel-bts.c
501
if (!btsq->bts->synth_opts.callchain &&
tools/perf/util/intel-pt.c
1248
sample->callchain = pt->chain;
tools/perf/util/intel-pt.c
1304
if (pt->synth_opts.callchain) {
tools/perf/util/intel-pt.c
1826
if (pt->synth_opts.callchain) {
tools/perf/util/intel-pt.c
1830
sample->callchain = ptq->chain;
tools/perf/util/intel-pt.c
2465
pt->synth_opts.callchain) {
tools/perf/util/intel-pt.c
2469
sample.callchain = ptq->chain;
tools/perf/util/intel-pt.c
3747
if (pt->synth_opts.add_callchain && !sample->callchain)
tools/perf/util/intel-pt.c
4006
if (pt->synth_opts.callchain)
tools/perf/util/intel-pt.c
4446
pt->synth_opts.callchain = true;
tools/perf/util/intel-pt.c
4637
if ((pt->synth_opts.callchain || pt->synth_opts.add_callchain) &&
tools/perf/util/intel-pt.c
4642
pt->synth_opts.callchain = false;
tools/perf/util/intel-pt.c
4675
pt->use_thread_stack = pt->synth_opts.callchain ||
tools/perf/util/intel-pt.c
4681
pt->callstack = pt->synth_opts.callchain ||
tools/perf/util/machine.c
2336
struct ip_callchain *chain = sample->callchain;
tools/perf/util/machine.c
2671
struct ip_callchain *chain = sample->callchain;
tools/perf/util/machine.c
2790
struct ip_callchain *chain = sample->callchain;
tools/perf/util/powerpc-vpadtl.c
190
sample.callchain = NULL;
tools/perf/util/record.c
108
evsel__config(evsel, opts, callchain);
tools/perf/util/record.c
95
void evlist__config(struct evlist *evlist, struct record_opts *opts, struct callchain_param *callchain)
tools/perf/util/s390-cpumsf.c
1079
itops->callchain || itops->thread_stack ||
tools/perf/util/sample.h
117
struct ip_callchain *callchain;
tools/perf/util/scripting-engines/trace-event-perl.c
270
if (!symbol_conf.use_callchain || !sample->callchain)
tools/perf/util/scripting-engines/trace-event-python.c
1000
Py_INCREF(callchain);
tools/perf/util/scripting-engines/trace-event-python.c
1008
PyTuple_SetItem(t, n++, callchain);
tools/perf/util/scripting-engines/trace-event-python.c
1015
pydict_set_item_string_decref(dict, "common_callchain", callchain);
tools/perf/util/scripting-engines/trace-event-python.c
1055
callchain);
tools/perf/util/scripting-engines/trace-event-python.c
1058
Py_DECREF(callchain);
tools/perf/util/scripting-engines/trace-event-python.c
1472
PyObject *handler, *t, *dict, *callchain;
tools/perf/util/scripting-engines/trace-event-python.c
1491
callchain = python_process_callchain(sample, evsel, al);
tools/perf/util/scripting-engines/trace-event-python.c
1492
dict = get_perf_sample_dict(sample, evsel, al, addr_al, callchain);
tools/perf/util/scripting-engines/trace-event-python.c
403
if (!symbol_conf.use_callchain || !sample->callchain)
tools/perf/util/scripting-engines/trace-event-python.c
837
PyObject *callchain)
tools/perf/util/scripting-engines/trace-event-python.c
891
pydict_set_item_string_decref(dict, "callchain", callchain);
tools/perf/util/scripting-engines/trace-event-python.c
944
PyObject *handler, *context, *t, *obj = NULL, *callchain;
tools/perf/util/scripting-engines/trace-event-python.c
998
callchain = python_process_callchain(sample, evsel, al);
tools/perf/util/session.c
1389
free(orig_sample.callchain);
tools/perf/util/session.c
815
struct ip_callchain *callchain = sample->callchain;
tools/perf/util/session.c
818
u64 kernel_callchain_nr = callchain->nr;
tools/perf/util/session.c
822
if (callchain->ips[i] == PERF_CONTEXT_USER)
tools/perf/util/session.c
851
i, callchain->ips[i]);
tools/perf/util/session.c
887
struct ip_callchain *callchain = sample->callchain;
tools/perf/util/session.c
892
printf("... FP chain: nr:%" PRIu64 "\n", callchain->nr);
tools/perf/util/session.c
894
for (i = 0; i < callchain->nr; i++)
tools/perf/util/session.c
896
i, callchain->ips[i],
tools/perf/util/session.c
897
callchain_context_str(callchain->ips[i]));
tools/perf/util/sort.c
733
callchain_branch_counts(he->callchain, &branch_count,
tools/perf/util/sort.c
766
callchain_branch_counts(he->callchain, &branch_count,
tools/perf/util/sort.c
796
callchain_branch_counts(he->callchain, &branch_count,
tools/perf/util/synthetic-events.c
1507
sz = (sample->callchain->nr + 1) * sizeof(u64);
tools/perf/util/synthetic-events.c
1702
sz = (sample->callchain->nr + 1) * sizeof(u64);
tools/perf/util/synthetic-events.c
1703
memcpy(array, sample->callchain, sz);