Re: [PATCH v5 perf, bpf-next 3/7] perf, bpf: introduce PERF_RECORD_BPF_EVENT

From: Peter Zijlstra
Date: Wed Jan 09 2019 - 07:41:43 EST


On Tue, Jan 08, 2019 at 08:45:19PM +0000, Alexei Starovoitov wrote:
> On 1/8/19 12:29 PM, Peter Zijlstra wrote:
> > On Thu, Dec 20, 2018 at 10:29:00AM -0800, Song Liu wrote:
> >> The following example shows kernel symbols for a BPF program with 7
> >> sub programs:
> >>
> >> ffffffffa0257cf9 t bpf_prog_b07ccb89267cf242_F
> >> ffffffffa02592e1 t bpf_prog_2dcecc18072623fc_F
> >> ffffffffa025b0e9 t bpf_prog_bb7a405ebaec5d5c_F
> >> ffffffffa025dd2c t bpf_prog_a7540d4a39ec1fc7_F
> >> ffffffffa025fcca t bpf_prog_05762d4ade0e3737_F
> >> ffffffffa026108f t bpf_prog_db4bd11e35df90d4_F
> >> ffffffffa0263f00 t bpf_prog_89d64e4abf0f0126_F
> >> ffffffffa0257cf9 t bpf_prog_ae31629322c4b018__dummy_tracepoi
> >
> > We should probably specify somewhere that the name can include a
> > '[module]' part just like normal kallsyms. Even though you don't
> > currently use that.
>
> there is no [module] equivalent in bpf land.

I know; although you could consider each program it's own separate
module. But what I meant was, we should probably document the name[]
format somewhere, maybe in the PERF_RECORD_KSYMBOL comment.

The "symbol [module]" syntax can be used to create a DSO sort key, so
you could simply put in "[bpf]" for all BPF generated symbols and have
everything BPF grouped in perf-report when sorted on DSO.

It doesn't have any other implications.

Similarly, I would suggest "[ftrace]" for all the ftrace trampolines
(which are currently not exposed but really should be).