From: Jiri Olsa <jolsa@redhat.com>
To: Song Liu <songliubraving@fb.com>
Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org,
ast@kernel.org, daniel@iogearbox.net, kernel-team@fb.com,
peterz@infradead.org, acme@redhat.com, jolsa@kernel.org,
namhyung@kernel.org
Subject: Re: [PATCH v3 perf,bpf 00/11] perf annotation of BPF programs
Date: Sun, 17 Feb 2019 23:04:15 +0100 [thread overview]
Message-ID: <20190217220415.GA26460@krava> (raw)
In-Reply-To: <20190217215744.GA797@krava>
On Sun, Feb 17, 2019 at 10:57:44PM +0100, Jiri Olsa wrote:
> On Fri, Feb 15, 2019 at 01:53:43PM -0800, Song Liu wrote:
> > Changes v2 to v3:
> > 1. Remove unnecessary include in header files;
> > 2. Improved error handling;
> > 3. Better naming of functions, variables, etc.;
> > 4. Enable bpf events by default for perf-top.
> >
> > Changes v1 to v2:
> > 1. Fix compilation error with different feature-disassembler-four-args;
> > 2. Fix a segfault in perf-record;
> > 3. Split patches 5/9 and 6/9 so that perf_env changes and perf.data changes
> > are in separate patches.
> >
> > This series enables annotation of BPF programs in perf.
> >
> > perf tool gathers information via sys_bpf and (optionally) stores them in
> > perf.data as headers.
> >
> > Patch 1/11 fixes a minor issue in kernel;
> > Patch 2/11 to 4/11 introduce new helper functions and use them in perf and
> > bpftool;
> > Patch 5/11 to 8/11 saves information of bpf program in perf_env;
> > Patch 9/11 adds --bpf-event options to perf-top;
> > Patch 10/11 enables annotation of bpf programs based on information
> > gathered in 5/11 to 8/11;
> > Patch 11/11 handles information of short living BPF program that are loaded
> > during perf-record or perf-top.
> >
> > Commands tested during developments are perf-top, perf-record, perf-report,
> > and perf-annotate.
> >
> > ===================== Note on patch dependency ========================
> > This set has dependency in both bpf-next tree and tip/perf/core. Current
> > version is developed on bpf-next tree with the following commits
> > cherry-picked from tip/perf/core:
> >
> > (from 1/10 to 10/10)
> > commit 76193a94522f ("perf, bpf: Introduce PERF_RECORD_KSYMBOL")
> > commit d764ac646491 ("tools headers uapi: Sync tools/include/uapi/linux/perf_event.h")
> > commit 6ee52e2a3fe4 ("perf, bpf: Introduce PERF_RECORD_BPF_EVENT")
> > commit df063c83aa2c ("tools headers uapi: Sync tools/include/uapi/linux/perf_event.h")
> > commit 9aa0bfa370b2 ("perf tools: Handle PERF_RECORD_KSYMBOL")
> > commit 45178a928a4b ("perf tools: Handle PERF_RECORD_BPF_EVENT")
> > commit 7b612e291a5a ("perf tools: Synthesize PERF_RECORD_* for loaded BPF programs")
> > commit a40b95bcd30c ("perf top: Synthesize BPF events for pre-existing loaded BPF programs")
> > commit 6934058d9fb6 ("bpf: Add module name [bpf] to ksymbols for bpf programs")
> > commit 811184fb6977 ("perf bpf: Fix synthesized PERF_RECORD_KSYMBOL/BPF_EVENT")
> > ========================================================================
> >
> > This set is also available at:
> >
> > https://github.com/liu-song-6/linux/tree/bpf-annotation
>
> I'm getting same compilation error as last time,
> maybe it wasnt updated?
I also applied manualy (with some conflicts) your patches
from emails on bpf/next/master with merged tip/perf/core
and got following compilation error:
CC util/find_bit.o
util/annotate.c: In function ‘symbol__disassemble_bpf’:
util/annotate.c:1771:29: error: incompatible type for argument 1 of ‘disassembler’
disassemble = disassembler(bfdf);
^~~~
In file included from util/annotate.c:36:
/usr/include/dis-asm.h:276:63: note: expected ‘enum bfd_architecture’ but argument is of type ‘bfd *’ {aka ‘struct bfd *’}
extern disassembler_ftype disassembler (enum bfd_architecture arc,
~~~~~~~~~~~~~~~~~~~~~~^~~
util/annotate.c:1771:16: error: too few arguments to function ‘disassembler’
disassemble = disassembler(bfdf);
^~~~~~~~~~~~
In file included from util/annotate.c:36:
/usr/include/dis-asm.h:276:27: note: declared here
extern disassembler_ftype disassembler (enum bfd_architecture arc,
^~~~~~~~~~~~
thanks,
jirka
prev parent reply other threads:[~2019-02-17 22:04 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-02-15 21:53 [PATCH v3 perf,bpf 00/11] perf annotation of BPF programs Song Liu
2019-02-15 21:53 ` [PATCH v3 perf,bpf 01/11] perf, bpf: consider events with attr.bpf_event as side-band events Song Liu
2019-02-15 21:53 ` [PATCH v3 perf,bpf 02/11] bpf: libbpf: introduce bpf_program__get_prog_info_linear() Song Liu
2019-02-15 21:53 ` [PATCH v3 perf,bpf 03/11] bpf: bpftool: use bpf_program__get_prog_info_linear() in prog.c:do_dump() Song Liu
2019-02-15 21:53 ` [PATCH v3 perf,bpf 04/11] perf, bpf: synthesize bpf events with bpf_program__get_prog_info_linear() Song Liu
2019-02-15 21:53 ` [PATCH v3 perf,bpf 05/11] perf, bpf: save bpf_prog_info in a rbtree in perf_env Song Liu
2019-02-17 23:05 ` Jiri Olsa
2019-02-19 5:52 ` Song Liu
2019-02-19 8:51 ` Jiri Olsa
2019-02-19 14:21 ` Song Liu
2019-02-17 23:05 ` Jiri Olsa
2019-02-17 23:06 ` Jiri Olsa
2019-02-15 21:53 ` [PATCH v3 perf,bpf 06/11] perf, bpf: save bpf_prog_info information as headers to perf.data Song Liu
2019-02-17 23:05 ` Jiri Olsa
2019-02-15 21:53 ` [PATCH v3 perf,bpf 07/11] perf, bpf: save btf in a rbtree in perf_env Song Liu
2019-02-15 21:53 ` [PATCH v3 perf,bpf 08/11] perf, bpf: save btf information as headers to perf.data Song Liu
2019-02-17 14:58 ` Namhyung Kim
2019-02-17 23:05 ` Jiri Olsa
2019-02-17 23:06 ` Jiri Olsa
2019-02-17 23:06 ` Jiri Olsa
2019-02-19 5:48 ` Song Liu
2019-02-15 21:53 ` [PATCH v3 perf,bpf 09/11] perf-top: add option --no-bpf-event Song Liu
2019-02-15 21:53 ` [PATCH v3 perf,bpf 10/11] perf, bpf: enable annotation of bpf program Song Liu
2019-02-17 23:05 ` Jiri Olsa
2019-02-17 23:06 ` Jiri Olsa
2019-02-17 23:06 ` Jiri Olsa
2019-02-17 23:06 ` Jiri Olsa
2019-02-17 23:06 ` Jiri Olsa
2019-02-15 21:53 ` [PATCH v3 perf,bpf 11/11] perf, bpf: save information about short living bpf programs Song Liu
2019-02-17 23:05 ` Jiri Olsa
2019-02-17 21:57 ` [PATCH v3 perf,bpf 00/11] perf annotation of BPF programs Jiri Olsa
2019-02-17 22:04 ` Jiri Olsa [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20190217220415.GA26460@krava \
--to=jolsa@redhat.com \
--cc=acme@redhat.com \
--cc=ast@kernel.org \
--cc=daniel@iogearbox.net \
--cc=jolsa@kernel.org \
--cc=kernel-team@fb.com \
--cc=linux-kernel@vger.kernel.org \
--cc=namhyung@kernel.org \
--cc=netdev@vger.kernel.org \
--cc=peterz@infradead.org \
--cc=songliubraving@fb.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).