Skip to content

Commit

Permalink
perf bpf: Make synthesize_bpf_events() receive perf_session pointer i…
Browse files Browse the repository at this point in the history
…nstead of perf_tool

This patch changes the arguments of perf_event__synthesize_bpf_events()
to include perf_session* instead of perf_tool*. perf_session will be
used in the next patch.

Signed-off-by: Song Liu <songliubraving@fb.com>
Reviewed-by: Jiri Olsa <jolsa@kernel.org>
Cc: Alexei Starovoitov <ast@kernel.org>
Cc: Daniel Borkmann <daniel@iogearbox.net>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Stanislav Fomichev <sdf@google.com>
Cc: kernel-team@fb.com
Link: http://lkml.kernel.org/r/20190312053051.2690567-6-songliubraving@fb.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
  • Loading branch information
Song Liu authored and Arnaldo Carvalho de Melo committed Mar 19, 2019
1 parent a742258 commit e541695
Show file tree
Hide file tree
Showing 4 changed files with 9 additions and 7 deletions.
2 changes: 1 addition & 1 deletion tools/perf/builtin-record.c
Original file line number Diff line number Diff line change
Expand Up @@ -1114,7 +1114,7 @@ static int record__synthesize(struct record *rec, bool tail)
return err;
}

err = perf_event__synthesize_bpf_events(tool, process_synthesized_event,
err = perf_event__synthesize_bpf_events(session, process_synthesized_event,
machine, opts);
if (err < 0)
pr_warning("Couldn't synthesize bpf events.\n");
Expand Down
2 changes: 1 addition & 1 deletion tools/perf/builtin-top.c
Original file line number Diff line number Diff line change
Expand Up @@ -1208,7 +1208,7 @@ static int __cmd_top(struct perf_top *top)

init_process_thread(top);

ret = perf_event__synthesize_bpf_events(&top->tool, perf_event__process,
ret = perf_event__synthesize_bpf_events(top->session, perf_event__process,
&top->session->machines.host,
&top->record_opts);
if (ret < 0)
Expand Down
8 changes: 5 additions & 3 deletions tools/perf/util/bpf-event.c
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
#include "debug.h"
#include "symbol.h"
#include "machine.h"
#include "session.h"

#define ptr_to_u64(ptr) ((__u64)(unsigned long)(ptr))

Expand Down Expand Up @@ -42,7 +43,7 @@ int machine__process_bpf_event(struct machine *machine __maybe_unused,
* -1 for failures;
* -2 for lack of kernel support.
*/
static int perf_event__synthesize_one_bpf_prog(struct perf_tool *tool,
static int perf_event__synthesize_one_bpf_prog(struct perf_session *session,
perf_event__handler_t process,
struct machine *machine,
int fd,
Expand All @@ -52,6 +53,7 @@ static int perf_event__synthesize_one_bpf_prog(struct perf_tool *tool,
struct ksymbol_event *ksymbol_event = &event->ksymbol_event;
struct bpf_event *bpf_event = &event->bpf_event;
struct bpf_prog_info_linear *info_linear;
struct perf_tool *tool = session->tool;
struct bpf_prog_info *info;
struct btf *btf = NULL;
bool has_btf = false;
Expand Down Expand Up @@ -175,7 +177,7 @@ static int perf_event__synthesize_one_bpf_prog(struct perf_tool *tool,
return err ? -1 : 0;
}

int perf_event__synthesize_bpf_events(struct perf_tool *tool,
int perf_event__synthesize_bpf_events(struct perf_session *session,
perf_event__handler_t process,
struct machine *machine,
struct record_opts *opts)
Expand Down Expand Up @@ -209,7 +211,7 @@ int perf_event__synthesize_bpf_events(struct perf_tool *tool,
continue;
}

err = perf_event__synthesize_one_bpf_prog(tool, process,
err = perf_event__synthesize_one_bpf_prog(session, process,
machine, fd,
event, opts);
close(fd);
Expand Down
4 changes: 2 additions & 2 deletions tools/perf/util/bpf-event.h
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ struct record_opts;
int machine__process_bpf_event(struct machine *machine, union perf_event *event,
struct perf_sample *sample);

int perf_event__synthesize_bpf_events(struct perf_tool *tool,
int perf_event__synthesize_bpf_events(struct perf_session *session,
perf_event__handler_t process,
struct machine *machine,
struct record_opts *opts);
Expand All @@ -27,7 +27,7 @@ static inline int machine__process_bpf_event(struct machine *machine __maybe_unu
return 0;
}

static inline int perf_event__synthesize_bpf_events(struct perf_tool *tool __maybe_unused,
static inline int perf_event__synthesize_bpf_events(struct perf_session *session __maybe_unused,
perf_event__handler_t process __maybe_unused,
struct machine *machine __maybe_unused,
struct record_opts *opts __maybe_unused)
Expand Down

0 comments on commit e541695

Please sign in to comment.