Lines Matching defs:session
31 #include "session.h"
48 struct perf_session *session;
183 * are enabled at the same time when the session runs on an EL2 kernel.
309 * but a CPU / Trace ID association changing during a session is an error.
311 static int cs_etm__process_aux_output_hw_id(struct perf_session *session,
333 etm = container_of(session->auxtrace, struct cs_etm_auxtrace, auxtrace);
338 evsel = evlist__event2evsel(session->evlist, event);
477 tidq->thread = machine__findnew_thread(&etm->session->machines.host, -1,
479 tidq->prev_packet_thread = machine__idle_thread(&etm->session->machines.host);
764 static int cs_etm__flush_events(struct perf_session *session,
767 struct cs_etm_auxtrace *etm = container_of(session->auxtrace,
837 static void cs_etm__free_events(struct perf_session *session)
840 struct cs_etm_auxtrace *aux = container_of(session->auxtrace,
853 static void cs_etm__free(struct perf_session *session)
857 struct cs_etm_auxtrace *aux = container_of(session->auxtrace,
860 cs_etm__free_events(session);
861 session->auxtrace = NULL;
876 static bool cs_etm__evsel_is_auxtrace(struct perf_session *session,
879 struct cs_etm_auxtrace *aux = container_of(session->auxtrace,
896 return &etmq->etm->session->machines.host;
908 return machines__find_guest(&etmq->etm->session->machines,
915 return &etmq->etm->session->machines.host;
1344 int fd = perf_data__fd(etmq->etm->session->data);
1487 ret = perf_session__deliver_synth_event(etm->session, event, &sample);
1561 ret = perf_session__deliver_synth_event(etm->session, event, &sample);
1573 struct perf_session *session;
1584 return perf_session__deliver_synth_event(cs_etm_synth->session,
1588 static int cs_etm__synth_event(struct perf_session *session,
1594 cs_etm_synth.session = session;
1601 struct perf_session *session)
1603 struct evlist *evlist = session->evlist;
1651 err = cs_etm__synth_event(session, &attr, id);
1674 err = cs_etm__synth_event(session, &attr, id);
2664 th = machine__findnew_thread(&etm->session->machines.host,
2702 th = machine__findnew_thread(&etm->session->machines.host,
2713 static int cs_etm__process_event(struct perf_session *session,
2718 struct cs_etm_auxtrace *etm = container_of(session->auxtrace,
2784 static int cs_etm__process_auxtrace_event(struct perf_session *session,
2788 struct cs_etm_auxtrace *etm = container_of(session->auxtrace,
2794 int fd = perf_data__fd(session->data);
2795 bool is_pipe = perf_data__is_pipe(session->data);
2807 err = auxtrace_queues__add_event(&etm->queues, session,
2837 struct evlist *evlist = etm->session->evlist;
2849 if (cs_etm__evsel_is_auxtrace(etm->session, evsel)) {
2930 static int cs_etm__queue_aux_fragment(struct perf_session *session, off_t file_offset, size_t sz,
2942 struct cs_etm_auxtrace *etm = container_of(session->auxtrace,
2950 err = perf_session__peek_event(session, file_offset, buf,
3017 err = auxtrace_queues__add_event(&etm->queues, session, &auxtrace_fragment,
3032 static int cs_etm__process_aux_hw_id_cb(struct perf_session *session, union perf_event *event,
3038 return cs_etm__process_aux_output_hw_id(session, event);
3043 static int cs_etm__queue_aux_records_cb(struct perf_session *session, union perf_event *event,
3068 evsel = evlist__event2evsel(session->evlist, event);
3078 list_for_each_entry(auxtrace_index, &session->auxtrace_index, list) {
3081 ret = cs_etm__queue_aux_fragment(session, ent->file_offset,
3101 static int cs_etm__queue_aux_records(struct perf_session *session)
3103 struct auxtrace_index *index = list_first_entry_or_null(&session->auxtrace_index,
3106 return perf_session__peek_events(session, session->header.data_offset,
3107 session->header.data_size,
3210 struct perf_session *session)
3214 struct perf_record_time_conv *tc = &session->time_conv;
3309 if (session->itrace_synth_opts->set) {
3310 etm->synth_opts = *session->itrace_synth_opts;
3313 session->itrace_synth_opts->default_no_sample);
3317 etm->session = session;
3338 session->auxtrace = &etm->auxtrace;
3353 err = cs_etm__synth_events(etm, session);
3381 err = perf_session__peek_events(session, session->header.data_offset,
3382 session->header.data_size,
3397 err = cs_etm__queue_aux_records(session);
3406 session->auxtrace = NULL;