[PATCH v8 perf, bpf-next 8/9] perf top: Synthesize BPF events for pre-existing loaded BPF programs
From: Song Liu
Date: Tue Jan 15 2019 - 13:54:11 EST
From: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
So that we can resolve symbols and map names.
Cc: Song Liu <songliubraving@xxxxxx>
Cc: Alexei Starovoitov <ast@xxxxxxxxxx>
Cc: Daniel Borkmann <daniel@xxxxxxxxxxxxx>
Cc: David Ahern <dsahern@xxxxxxxxx>
Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
Cc: kernel-team@xxxxxx
Cc: netdev@xxxxxxxxxxxxxxx
Link: https://lkml.kernel.org/n/tip-h3loibff6htedj43q7uinon0@xxxxxxxxxxxxxx
Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
Signed-off-by: Song Liu <songliubraving@xxxxxx>
---
tools/perf/builtin-top.c | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/tools/perf/builtin-top.c b/tools/perf/builtin-top.c
index fe3ecfb2e64b..62055e6a72ae 100644
--- a/tools/perf/builtin-top.c
+++ b/tools/perf/builtin-top.c
@@ -22,6 +22,7 @@
#include "perf.h"
#include "util/annotate.h"
+#include "util/bpf-event.h"
#include "util/config.h"
#include "util/color.h"
#include "util/drv_configs.h"
@@ -1220,6 +1221,12 @@ static int __cmd_top(struct perf_top *top)
init_process_thread(top);
+ ret = perf_event__synthesize_bpf_events(&top->tool, perf_event__process,
+ &top->session->machines.host,
+ &top->record_opts);
+ if (ret < 0)
+ pr_warning("Couldn't synthesize bpf events.\n");
+
machine__synthesize_threads(&top->session->machines.host, &opts->target,
top->evlist->threads, false,
top->nr_threads_synthesize);
--
2.17.1