Lines Matching full:sample
1061 struct perf_sample *sample) in intel_pt_prep_b_sample() argument
1064 sample->time = tsc_to_perf_time(ptq->timestamp, &pt->tc); in intel_pt_prep_b_sample()
1066 sample->ip = ptq->state->from_ip; in intel_pt_prep_b_sample()
1067 sample->cpumode = intel_pt_cpumode(pt, sample->ip); in intel_pt_prep_b_sample()
1068 sample->pid = ptq->pid; in intel_pt_prep_b_sample()
1069 sample->tid = ptq->tid; in intel_pt_prep_b_sample()
1070 sample->addr = ptq->state->to_ip; in intel_pt_prep_b_sample()
1071 sample->period = 1; in intel_pt_prep_b_sample()
1072 sample->cpu = ptq->cpu; in intel_pt_prep_b_sample()
1073 sample->flags = ptq->flags; in intel_pt_prep_b_sample()
1074 sample->insn_len = ptq->insn_len; in intel_pt_prep_b_sample()
1075 memcpy(sample->insn, ptq->insn, INTEL_PT_INSN_BUF_SZ); in intel_pt_prep_b_sample()
1077 event->sample.header.type = PERF_RECORD_SAMPLE; in intel_pt_prep_b_sample()
1078 event->sample.header.misc = sample->cpumode; in intel_pt_prep_b_sample()
1079 event->sample.header.size = sizeof(struct perf_event_header); in intel_pt_prep_b_sample()
1083 struct perf_sample *sample, u64 type) in intel_pt_inject_event() argument
1085 event->header.size = perf_event__sample_event_size(sample, type, 0); in intel_pt_inject_event()
1086 return perf_event__synthesize_sample(event, type, 0, sample); in intel_pt_inject_event()
1091 struct perf_sample *sample, u64 type) in intel_pt_opt_inject() argument
1096 return intel_pt_inject_event(event, sample, type); in intel_pt_opt_inject()
1101 struct perf_sample *sample, u64 type) in intel_pt_deliver_synth_b_event() argument
1105 ret = intel_pt_opt_inject(pt, event, sample, type); in intel_pt_deliver_synth_b_event()
1109 ret = perf_session__deliver_synth_event(pt->session, event, sample); in intel_pt_deliver_synth_b_event()
1120 struct perf_sample sample = { .ip = 0, }; in intel_pt_synth_branch_sample() local
1132 intel_pt_prep_b_sample(pt, ptq, event, &sample); in intel_pt_synth_branch_sample()
1134 sample.id = ptq->pt->branches_id; in intel_pt_synth_branch_sample()
1135 sample.stream_id = ptq->pt->branches_id; in intel_pt_synth_branch_sample()
1145 .from = sample.ip, in intel_pt_synth_branch_sample()
1146 .to = sample.addr, in intel_pt_synth_branch_sample()
1149 sample.branch_stack = (struct branch_stack *)&dummy_bs; in intel_pt_synth_branch_sample()
1152 return intel_pt_deliver_synth_b_event(pt, event, &sample, in intel_pt_synth_branch_sample()
1159 struct perf_sample *sample) in intel_pt_prep_sample() argument
1161 intel_pt_prep_b_sample(pt, ptq, event, sample); in intel_pt_prep_sample()
1166 sample->ip, pt->kernel_start); in intel_pt_prep_sample()
1167 sample->callchain = ptq->chain; in intel_pt_prep_sample()
1172 sample->branch_stack = ptq->last_branch; in intel_pt_prep_sample()
1179 struct perf_sample *sample, in intel_pt_deliver_synth_event() argument
1184 ret = intel_pt_deliver_synth_b_event(pt, event, sample, type); in intel_pt_deliver_synth_event()
1196 struct perf_sample sample = { .ip = 0, }; in intel_pt_synth_instruction_sample() local
1201 intel_pt_prep_sample(pt, ptq, event, &sample); in intel_pt_synth_instruction_sample()
1203 sample.id = ptq->pt->instructions_id; in intel_pt_synth_instruction_sample()
1204 sample.stream_id = ptq->pt->instructions_id; in intel_pt_synth_instruction_sample()
1205 sample.period = ptq->state->tot_insn_cnt - ptq->last_insn_cnt; in intel_pt_synth_instruction_sample()
1209 return intel_pt_deliver_synth_event(pt, ptq, event, &sample, in intel_pt_synth_instruction_sample()
1217 struct perf_sample sample = { .ip = 0, }; in intel_pt_synth_transaction_sample() local
1222 intel_pt_prep_sample(pt, ptq, event, &sample); in intel_pt_synth_transaction_sample()
1224 sample.id = ptq->pt->transactions_id; in intel_pt_synth_transaction_sample()
1225 sample.stream_id = ptq->pt->transactions_id; in intel_pt_synth_transaction_sample()
1227 return intel_pt_deliver_synth_event(pt, ptq, event, &sample, in intel_pt_synth_transaction_sample()
1234 struct perf_sample *sample) in intel_pt_prep_p_sample() argument
1236 intel_pt_prep_sample(pt, ptq, event, sample); in intel_pt_prep_p_sample()
1242 if (!sample->ip) in intel_pt_prep_p_sample()
1243 sample->flags = 0; in intel_pt_prep_p_sample()
1250 struct perf_sample sample = { .ip = 0, }; in intel_pt_synth_ptwrite_sample() local
1256 intel_pt_prep_p_sample(pt, ptq, event, &sample); in intel_pt_synth_ptwrite_sample()
1258 sample.id = ptq->pt->ptwrites_id; in intel_pt_synth_ptwrite_sample()
1259 sample.stream_id = ptq->pt->ptwrites_id; in intel_pt_synth_ptwrite_sample()
1265 sample.raw_size = perf_synth__raw_size(raw); in intel_pt_synth_ptwrite_sample()
1266 sample.raw_data = perf_synth__raw_data(&raw); in intel_pt_synth_ptwrite_sample()
1268 return intel_pt_deliver_synth_event(pt, ptq, event, &sample, in intel_pt_synth_ptwrite_sample()
1276 struct perf_sample sample = { .ip = 0, }; in intel_pt_synth_cbr_sample() local
1283 intel_pt_prep_p_sample(pt, ptq, event, &sample); in intel_pt_synth_cbr_sample()
1285 sample.id = ptq->pt->cbr_id; in intel_pt_synth_cbr_sample()
1286 sample.stream_id = ptq->pt->cbr_id; in intel_pt_synth_cbr_sample()
1293 sample.raw_size = perf_synth__raw_size(raw); in intel_pt_synth_cbr_sample()
1294 sample.raw_data = perf_synth__raw_data(&raw); in intel_pt_synth_cbr_sample()
1296 return intel_pt_deliver_synth_event(pt, ptq, event, &sample, in intel_pt_synth_cbr_sample()
1304 struct perf_sample sample = { .ip = 0, }; in intel_pt_synth_mwait_sample() local
1310 intel_pt_prep_p_sample(pt, ptq, event, &sample); in intel_pt_synth_mwait_sample()
1312 sample.id = ptq->pt->mwait_id; in intel_pt_synth_mwait_sample()
1313 sample.stream_id = ptq->pt->mwait_id; in intel_pt_synth_mwait_sample()
1318 sample.raw_size = perf_synth__raw_size(raw); in intel_pt_synth_mwait_sample()
1319 sample.raw_data = perf_synth__raw_data(&raw); in intel_pt_synth_mwait_sample()
1321 return intel_pt_deliver_synth_event(pt, ptq, event, &sample, in intel_pt_synth_mwait_sample()
1329 struct perf_sample sample = { .ip = 0, }; in intel_pt_synth_pwre_sample() local
1335 intel_pt_prep_p_sample(pt, ptq, event, &sample); in intel_pt_synth_pwre_sample()
1337 sample.id = ptq->pt->pwre_id; in intel_pt_synth_pwre_sample()
1338 sample.stream_id = ptq->pt->pwre_id; in intel_pt_synth_pwre_sample()
1343 sample.raw_size = perf_synth__raw_size(raw); in intel_pt_synth_pwre_sample()
1344 sample.raw_data = perf_synth__raw_data(&raw); in intel_pt_synth_pwre_sample()
1346 return intel_pt_deliver_synth_event(pt, ptq, event, &sample, in intel_pt_synth_pwre_sample()
1354 struct perf_sample sample = { .ip = 0, }; in intel_pt_synth_exstop_sample() local
1360 intel_pt_prep_p_sample(pt, ptq, event, &sample); in intel_pt_synth_exstop_sample()
1362 sample.id = ptq->pt->exstop_id; in intel_pt_synth_exstop_sample()
1363 sample.stream_id = ptq->pt->exstop_id; in intel_pt_synth_exstop_sample()
1368 sample.raw_size = perf_synth__raw_size(raw); in intel_pt_synth_exstop_sample()
1369 sample.raw_data = perf_synth__raw_data(&raw); in intel_pt_synth_exstop_sample()
1371 return intel_pt_deliver_synth_event(pt, ptq, event, &sample, in intel_pt_synth_exstop_sample()
1379 struct perf_sample sample = { .ip = 0, }; in intel_pt_synth_pwrx_sample() local
1385 intel_pt_prep_p_sample(pt, ptq, event, &sample); in intel_pt_synth_pwrx_sample()
1387 sample.id = ptq->pt->pwrx_id; in intel_pt_synth_pwrx_sample()
1388 sample.stream_id = ptq->pt->pwrx_id; in intel_pt_synth_pwrx_sample()
1393 sample.raw_size = perf_synth__raw_size(raw); in intel_pt_synth_pwrx_sample()
1394 sample.raw_data = perf_synth__raw_data(&raw); in intel_pt_synth_pwrx_sample()
1396 return intel_pt_deliver_synth_event(pt, ptq, event, &sample, in intel_pt_synth_pwrx_sample()
1791 static int intel_pt_lost(struct intel_pt *pt, struct perf_sample *sample) in intel_pt_lost() argument
1793 return intel_pt_synth_error(pt, INTEL_PT_ERR_LOST, sample->cpu, in intel_pt_lost()
1794 sample->pid, sample->tid, 0); in intel_pt_lost()
1871 struct perf_sample *sample) in intel_pt_process_switch() argument
1877 evsel = perf_evlist__id2evsel(pt->session->evlist, sample->id); in intel_pt_process_switch()
1881 tid = perf_evsel__intval(evsel, sample, "next_pid"); in intel_pt_process_switch()
1882 cpu = sample->cpu; in intel_pt_process_switch()
1885 cpu, tid, sample->time, perf_time_to_tsc(sample->time, in intel_pt_process_switch()
1888 ret = intel_pt_sync_switch(pt, cpu, tid, sample->time); in intel_pt_process_switch()
1896 struct perf_sample *sample) in intel_pt_context_switch() argument
1902 cpu = sample->cpu; in intel_pt_context_switch()
1916 pid = sample->pid; in intel_pt_context_switch()
1917 tid = sample->tid; in intel_pt_context_switch()
1924 cpu, pid, tid, sample->time, perf_time_to_tsc(sample->time, in intel_pt_context_switch()
1927 ret = intel_pt_sync_switch(pt, cpu, tid, sample->time); in intel_pt_context_switch()
1936 struct perf_sample *sample) in intel_pt_process_itrace_start() argument
1942 sample->cpu, event->itrace_start.pid, in intel_pt_process_itrace_start()
1943 event->itrace_start.tid, sample->time, in intel_pt_process_itrace_start()
1944 perf_time_to_tsc(sample->time, &pt->tc)); in intel_pt_process_itrace_start()
1946 return machine__set_current_tid(pt->machine, sample->cpu, in intel_pt_process_itrace_start()
1953 struct perf_sample *sample, in intel_pt_process_event() argument
1969 if (sample->time && sample->time != (u64)-1) in intel_pt_process_event()
1970 timestamp = perf_time_to_tsc(sample->time, &pt->tc); in intel_pt_process_event()
1984 sample->time); in intel_pt_process_event()
1995 err = intel_pt_lost(pt, sample); in intel_pt_process_event()
2001 err = intel_pt_process_switch(pt, sample); in intel_pt_process_event()
2003 err = intel_pt_process_itrace_start(pt, event, sample); in intel_pt_process_event()
2006 err = intel_pt_context_switch(pt, event, sample); in intel_pt_process_event()
2010 sample->cpu, sample->time, timestamp); in intel_pt_process_event()
2113 struct perf_sample *sample __maybe_unused, in intel_pt_event_synth()
2129 pr_debug("Synthesizing '%s' event with id %" PRIu64 " sample type %#" PRIx64 "\n", in intel_pt_synth_event()