Messages in this thread | | | From | Song Liu <> | Subject | Re: [PATCH 10/12] perf script: Add --show-bpf-events to show eBPF related events | Date | Tue, 7 May 2019 18:27:15 +0000 |
| |
> On May 7, 2019, at 1:18 AM, Jiri Olsa <jolsa@redhat.com> wrote: > > On Mon, May 06, 2019 at 09:42:44PM +0000, Song Liu wrote: > > SNIP > >>> +static int >>> +process_bpf_events(struct perf_tool *tool __maybe_unused, >>> + union perf_event *event, >>> + struct perf_sample *sample, >>> + struct machine *machine) >>> +{ >>> + struct thread *thread; >>> + struct perf_script *script = container_of(tool, struct perf_script, tool); >>> + struct perf_session *session = script->session; >>> + struct perf_evsel *evsel = perf_evlist__id2evsel(session->evlist, sample->id); >>> + >>> + if (machine__process_ksymbol(machine, event, sample) < 0) >>> + return -1; >>> + >>> + if (!evsel->attr.sample_id_all) { >>> + perf_event__fprintf(event, stdout); >>> + return 0; >>> + } >>> + >>> + thread = machine__findnew_thread(machine, sample->pid, sample->tid); >>> + if (thread == NULL) { >>> + pr_debug("problem processing MMAP event, skipping it.\n"); >>> + return -1; >>> + } >>> + >>> + if (!filter_cpu(sample)) { >>> + perf_sample__fprintf_start(sample, thread, evsel, >>> + event->header.type, stdout); >>> + perf_event__fprintf(event, stdout); >>> + } >>> + >>> + thread__put(thread); >>> + return 0; >>> +} >>> + >>> static void sig_handler(int sig __maybe_unused) >>> { >>> session_done = 1; >>> @@ -2420,6 +2456,10 @@ static int __cmd_script(struct perf_script *script) >>> script->tool.ordered_events = false; >>> script->tool.finished_round = process_finished_round_event; >>> } >>> + if (script->show_bpf_events) { >>> + script->tool.ksymbol = process_bpf_events; >>> + script->tool.bpf_event = process_bpf_events; >> >> Why do we need both set to process_bpf_events? > > --show-*-events option is there to display all the related events for given '*' > > we want to display both ksymbol and bpf_event in here, > process_bpf_events takes care of it for both of them
I see. Thanks for the explanation!
Song
| |