On Mon, Mar 11, 2019 at 10:30:43PM -0700, Song Liu wrote: SNIP > +static void print_bpf_prog_info(struct feat_fd *ff, FILE *fp) > +{ > + struct perf_env *env = &ff->ph->env; > + struct rb_root *root; > + struct rb_node *next; > + > + down_read(&env->bpf_progs.lock); > + > + root = &env->bpf_progs.infos; > + next = rb_first(root); > + > + while (next) { > + struct bpf_prog_info_node *node; > + > + node = rb_entry(next, struct bpf_prog_info_node, rb_node); > + next = rb_next(&node->rb_node); > + fprintf(fp, "# bpf_prog_info of id %u\n", > + node->info_linear->info.id); so report displays bpf prog dso/name like: 0.02% ls bpf_prog_c80ffe554aba1bec_syscall_enter_o [k] bpf_prog_c80ffe554aba1bec_syscall_enter_o ▒ and 'perf report --header-only -I' shows: # bpf_prog_info of id 17 # bpf_prog_info of id 18 # bpf_prog_info of id 19 # bpf_prog_info of id 20 # bpf_prog_info of id 21 # bpf_prog_info of id 22 # bpf_prog_info of id 25 # bpf_prog_info of id 26 # bpf_prog_info of id 34 # bpf_prog_info of id 35 could we have something more detailed like bpftool output: 34: tracepoint name syscall_enter_o tag c80ffe554aba1bec gpl loaded_at 2019-03-12T14:02:03+0100 uid 0 xlated 360B jited 232B memlock 4096B map_ids 30 35: tracepoint name syscall_enter_o tag ada5ccbe5576399c gpl loaded_at 2019-03-12T14:02:03+0100 uid 0 xlated 352B jited 228B memlock 4096B map_ids 30 could be on top of this patchset jirka