Lines Matching refs:session
83 struct perf_session *session; member
116 struct perf_session *session; member
200 static int perf_event__repipe_op2_synth(struct perf_session *session, in perf_event__repipe_op2_synth() argument
203 return perf_event__repipe_synth(session->tool, event); in perf_event__repipe_op2_synth()
206 static int perf_event__repipe_op4_synth(struct perf_session *session, in perf_event__repipe_op4_synth() argument
211 return perf_event__repipe_synth(session->tool, event); in perf_event__repipe_op4_synth()
261 static s64 perf_event__repipe_auxtrace(struct perf_session *session, in perf_event__repipe_auxtrace() argument
264 const struct perf_tool *tool = session->tool; in perf_event__repipe_auxtrace()
277 ret = auxtrace_index__auxtrace_event(&session->auxtrace_index, in perf_event__repipe_auxtrace()
283 if (perf_data__is_pipe(session->data) || !session->one_mmap) { in perf_event__repipe_auxtrace()
287 ret = copy_bytes(inject, session->data, in perf_event__repipe_auxtrace()
302 perf_event__repipe_auxtrace(struct perf_session *session __maybe_unused, in perf_event__repipe_auxtrace()
456 evlist__for_each_entry(inject->session->evlist, pos) { in inject__mmap_evsel()
490 ret = jit_process(inject->session, &inject->output, machine, in perf_event__repipe_common_mmap()
515 struct evsel *evsel = evlist__event2evsel(inject->session->evlist, event); in perf_event__repipe_common_mmap()
534 inject->mmap_evsel = evlist__event2evsel(inject->session->evlist, event); in perf_event__repipe_common_mmap()
546 struct evsel *evsel = evlist__event2evsel(inject->session->evlist, event); in perf_event__repipe_common_mmap()
664 static int perf_event__repipe_tracing_data(struct perf_session *session, in perf_event__repipe_tracing_data() argument
667 perf_event__repipe_synth(session->tool, event); in perf_event__repipe_tracing_data()
669 return perf_event__process_tracing_data(session, event); in perf_event__repipe_tracing_data()
1076 static int host_peek_vm_comms_cb(struct perf_session *session __maybe_unused, in host_peek_vm_comms_cb()
1115 static int host_peek_vm_comms(struct perf_session *session, struct guest_session *gs) in host_peek_vm_comms() argument
1117 return perf_session__peek_events(session, session->header.data_offset, in host_peek_vm_comms()
1118 session->header.data_size, in host_peek_vm_comms()
1174 struct evlist *evlist = gs->session->evlist; in guest_session__map_ids()
1222 return perf_event__process_attr(tool, event, &inject->session->evlist); in process_attr()
1268 sid = evlist__id2sid(inject->session->evlist, id_array[i]); in guest_session__add_attr()
1283 struct evlist *evlist = gs->session->evlist; in guest_session__add_attrs()
1298 struct perf_session *session = inject->session; in synthesize_id_index() local
1299 struct evlist *evlist = session->evlist; in synthesize_id_index()
1300 struct machine *machine = &session->machines.host; in synthesize_id_index()
1351 return perf_event__process_build_id(inject->session, event); in process_build_id()
1356 struct machine *machine = perf_session__findnew_machine(inject->session, machine_pid); in synthesize_build_id()
1397 perf_header__set_feat(&inject->session->header, HEADER_BUILD_ID); in guest_session__add_build_ids()
1399 return dsos__for_each_dso(&gs->session->machines.host.dsos, in guest_session__add_build_ids()
1421 struct perf_session *session; in guest_session__start() local
1451 session = perf_session__new(&gs->data, &gs->tool); in guest_session__start()
1452 if (IS_ERR(session)) in guest_session__start()
1453 return PTR_ERR(session); in guest_session__start()
1454 gs->session = session; in guest_session__start()
1460 gs->dflt_id_hdr_size = session->machines.host.id_hdr_size; in guest_session__start()
1462 gs->dflt_id = evlist__first_id(session->evlist); in guest_session__start()
1476 if (zstd_init(&gs->session->zstd_data, 0) < 0) in guest_session__start()
1483 ret = perf_session__process_events(gs->session); in guest_session__start()
1509 if (gs->session) { in guest_session__exit()
1510 perf_session__delete(gs->session); in guest_session__exit()
1539 get_tsc_conv(&gs->host_tc, &inject->session->time_conv); in guest_session__get_tc()
1540 get_tsc_conv(&gs->guest_tc, &gs->session->time_conv); in guest_session__get_tc()
1609 ret = evlist__parse_sample(gs->session->evlist, gs->ev.event, &gs->ev.sample); in guest_session__fetch()
1701 struct evsel *evsel = evlist__id2evsel(gs->session->evlist, id); in guest_session__inject_events()
1746 ret = evlist__append_id_sample(inject->session->evlist, ev, sample); in guest_session__inject_events()
1783 static int host__finished_init(struct perf_session *session, union perf_event *event) in host__finished_init() argument
1785 struct perf_inject *inject = container_of(session->tool, struct perf_inject, tool); in host__finished_init()
1793 ret = host_peek_vm_comms(session, gs); in host__finished_init()
1805 gs->highest_id = evlist__find_highest_id(session->evlist); in host__finished_init()
1806 ret = guest_session__map_ids(gs, session->evlist); in host__finished_init()
1814 ret = synthesize_id_index(inject, gs->session->evlist->core.nr_entries); in host__finished_init()
1832 return perf_event__repipe_op2_synth(session, event); in host__finished_init()
1924 struct evlist *evlist = inject->session->evlist; in strip_init()
2030 struct perf_header *header = &inject->session->header; in save_section_info()
2031 int fd = perf_data__fd(inject->session->data); in save_section_info()
2091 int fd = perf_data__fd(inject->session->data); in feat_copy()
2172 struct perf_session *session = inject->session; in __cmd_inject() local
2174 u64 output_data_offset = perf_session__data_offset(session->evlist); in __cmd_inject()
2180 bool write_attrs_after_data = !inject->output.is_pipe && inject->session->data->is_pipe; in __cmd_inject()
2200 evlist__for_each_entry(session->evlist, evsel) { in __cmd_inject()
2216 session->itrace_synth_opts = &inject->itrace_synth_opts; in __cmd_inject()
2225 session->itrace_synth_opts = &inject->itrace_synth_opts; in __cmd_inject()
2239 output_data_offset = roundup(8192 + session->header.data_offset, 4096); in __cmd_inject()
2275 ret = guest_session__start(gs, name, session->data->force); in __cmd_inject()
2281 output_data_offset += gs->session->header.data_offset; in __cmd_inject()
2286 auxtrace_index__free(&session->auxtrace_index); in __cmd_inject()
2291 ret = perf_session__process_events(session); in __cmd_inject()
2295 if (gs->session) { in __cmd_inject()
2315 perf_header__set_feat(&session->header, HEADER_BUILD_ID); in __cmd_inject()
2320 if (perf_header__has_feat(&session->header, HEADER_BUILD_ID) && in __cmd_inject()
2322 perf_session__dsos_hit_all(session); in __cmd_inject()
2328 perf_header__clear_feat(&session->header, in __cmd_inject()
2332 perf_header__set_feat(&session->header, in __cmd_inject()
2335 session->header.data_offset = output_data_offset; in __cmd_inject()
2336 session->header.data_size = inject->bytes_written; in __cmd_inject()
2337 perf_session__inject_header(session, session->evlist, fd, &inj_fc.fc, in __cmd_inject()
2541 inject.session = __perf_session__new(&data, &inject.tool, in cmd_inject()
2545 if (IS_ERR(inject.session)) { in cmd_inject()
2546 ret = PTR_ERR(inject.session); in cmd_inject()
2550 if (zstd_init(&(inject.session->zstd_data), 0) < 0) in cmd_inject()
2572 inject.session, in cmd_inject()
2612 ret = symbol__init(perf_session__env(inject.session)); in cmd_inject()
2622 zstd_fini(&(inject.session->zstd_data)); in cmd_inject()
2623 perf_session__delete(inject.session); in cmd_inject()