On Fri, 15 Mar 2019 15:41:41 -0300, Arnaldo Carvalho de Melo wrote:
> While developing 'perf trace' and looking at BPF maps it puts in place I
> noticed that one needs to first use 'bpftool map' to lookup a map id to
> then use 'bpftool map dump map id <map-id-looked-up>'.
> 
> This is needed because everytime we restart 'perf trace' the map IDs
> gets changed so we need to do the ID lookup again.
> 
> To speed up this sequence, allow specifying just the map name, look up
> its ID and then use the existing routines as if the user had provided
> the map id.

I can see how it could be useful for quick debug.  Names are not
guaranteed to be unique, though, do you not care about potential
duplicates?

> This:
> 
>   # bpftool map
>   13: lpm_trie  flags 0x1
>       key 8B  value 8B  max_entries 1  memlock 4096B
>   14: lpm_trie  flags 0x1
>       key 20B  value 8B  max_entries 1  memlock 4096B
>   15: lpm_trie  flags 0x1
>       key 8B  value 8B  max_entries 1  memlock 4096B
>   16: lpm_trie  flags 0x1
>       key 20B  value 8B  max_entries 1  memlock 4096B
>   17: lpm_trie  flags 0x1
>       key 8B  value 8B  max_entries 1  memlock 4096B
>   18: lpm_trie  flags 0x1
>       key 20B  value 8B  max_entries 1  memlock 4096B
>   21: lpm_trie  flags 0x1
>       key 8B  value 8B  max_entries 1  memlock 4096B
>   22: lpm_trie  flags 0x1
>       key 20B  value 8B  max_entries 1  memlock 4096B
>   28: perf_event_array  name __augmented_sys  flags 0x0
>       key 4B  value 4B  max_entries 8  memlock 4096B
>   29: array  name syscalls  flags 0x0
>       key 4B  value 1B  max_entries 512  memlock 8192B
>   30: hash  name pids_filtered  flags 0x0
>       key 4B  value 1B  max_entries 64  memlock 8192B
>   #
>    # bpftool map dump id 30
>   [{
>           "key": 26554,
>           "value": true
>       },{
>           "key": 2592,
>           "value": true
>       }
>   ]
>   #
> 
> Now is equivalent to:
> 
>   # bpftool map dump pids_filtered

Please do keep the current model of name val, IOW dump map *name* pids..

>   [{
>           "key": 26554,
>           "value": true
>       },{
>           "key": 2592,
>           "value": true
>       }
>   ]
>   #
> 
> Cc: Alexei Starovoitov <a...@kernel.org>
> Cc: Daniel Borkmann <dan...@iogearbox.net>
> Cc: Jakub Kicinski <jakub.kicin...@netronome.com>
> cc: Jiri Olsa <jo...@kernel.org>
> Cc: Martin KaFai Lau <ka...@fb.com>
> Cc: Namhyung Kim <namhy...@kernel.org>
> Cc: Peter Zijlstra <pet...@infradead.org>
> Cc: Quentin Monnet <quentin.mon...@netronome.com>
> Cc: Song Liu <songliubrav...@fb.com>
> Cc: Stanislav Fomichev <s...@google.com>
> Cc: Yonghong Song <y...@fb.com>
> Link: https://lkml.kernel.org/n/tip-rrnxuhvety3j3rf0r9zlb...@git.kernel.org
> Signed-off-by: Arnaldo Carvalho de Melo <a...@redhat.com>

Please also update the bash completions and all the help/mans/docs.

Reply via email to