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 <ast@xxxxxxxxxx> > Cc: Daniel Borkmann <daniel@xxxxxxxxxxxxx> > Cc: Jakub Kicinski <jakub.kicinski@xxxxxxxxxxxxx> > cc: Jiri Olsa <jolsa@xxxxxxxxxx> > Cc: Martin KaFai Lau <kafai@xxxxxx> > Cc: Namhyung Kim <namhyung@xxxxxxxxxx> > Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx> > Cc: Quentin Monnet <quentin.monnet@xxxxxxxxxxxxx> > Cc: Song Liu <songliubraving@xxxxxx> > Cc: Stanislav Fomichev <sdf@xxxxxxxxxx> > Cc: Yonghong Song <yhs@xxxxxx> > Link: https://lkml.kernel.org/n/tip-rrnxuhvety3j3rf0r9zlbfro@xxxxxxxxxxxxxx > Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx> Please also update the bash completions and all the help/mans/docs.