Re: [PATCH v5 perf, bpf-next 3/7] perf, bpf: introduce PERF_RECORD_BPF_EVENT
From: Alexei Starovoitov
Date: Tue Jan 08 2019 - 15:45:57 EST
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.
The progs loaded by different users can be shared.
There is no strict tree hierarchy (like in modules)
where there is one root and a bunch of function underneath.
In bpf all these functions form a graph and can call each other.
Same with maps that are shared by different progs of different types.
Like networking prog and tracing prog can share common map.