void event_format__print(struct event_format *event, int cpu, void *data, int size) { struct pevent_record record; struct trace_seq s; memset(&record, 0, sizeof(record)); record.cpu = cpu; record.size = size; record.data = data; trace_seq_init(&s); pevent_event_info(&s, event, &record); trace_seq_do_printf(&s); }
static void show_plugins(void) { struct pevent *pevent; struct plugin_list *list; struct trace_seq s; pevent = pevent_alloc(); if (!pevent) die("Can not allocate pevent\n"); trace_seq_init(&s); list = tracecmd_load_plugins(pevent); trace_util_print_plugins(&s, " ", "\n", list); trace_seq_do_printf(&s); tracecmd_unload_plugins(list, pevent); pevent_free(pevent); }
void print_event(struct pevent *pevent, int cpu, void *data, int size, unsigned long long nsecs, char *comm) { struct pevent_record record; struct trace_seq s; int pid; pevent->latency_format = latency_format; record.ts = nsecs; record.cpu = cpu; record.size = size; record.data = data; pid = pevent_data_pid(pevent, &record); if (!pevent_pid_is_registered(pevent, pid)) pevent_register_comm(pevent, comm, pid); trace_seq_init(&s); pevent_print_event(pevent, &s, &record); trace_seq_do_printf(&s); printf("\n"); }
void print_trace_event(struct pevent *pevent, int cpu, void *data, int size) { struct event_format *event; struct pevent_record record; struct trace_seq s; int type; type = trace_parse_common_type(pevent, data); event = pevent_find_event(pevent, type); if (!event) { warning("ug! no event found for type %d", type); return; } memset(&record, 0, sizeof(record)); record.cpu = cpu; record.size = size; record.data = data; trace_seq_init(&s); pevent_event_info(&s, event, &record); trace_seq_do_printf(&s); }