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).