lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20190315121632.246824dc@cakuba.netronome.com>
Date:   Fri, 15 Mar 2019 12:16:32 -0700
From:   Jakub Kicinski <jakub.kicinski@...ronome.com>
To:     Arnaldo Carvalho de Melo <acme@...hat.com>
Cc:     Quentin Monnet <quentin.monnet@...ronome.com>,
        Daniel Borkmann <daniel@...earbox.net>,
        Alexei Starovoitov <ast@...nel.org>,
        Jiri Olsa <jolsa@...nel.org>, Martin KaFai Lau <kafai@...com>,
        Namhyung Kim <namhyung@...nel.org>,
        Peter Zijlstra <peterz@...radead.org>,
        Song Liu <songliubraving@...com>,
        Stanislav Fomichev <sdf@...gle.com>,
        Yonghong Song <yhs@...com>, bpf@...r.kernel.org,
        netdev@...r.kernel.org
Subject: Re: [PATCH 1/1] bpftool: Allow referring to maps by its name

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@...nel.org>
> Cc: Daniel Borkmann <daniel@...earbox.net>
> Cc: Jakub Kicinski <jakub.kicinski@...ronome.com>
> cc: Jiri Olsa <jolsa@...nel.org>
> Cc: Martin KaFai Lau <kafai@...com>
> Cc: Namhyung Kim <namhyung@...nel.org>
> Cc: Peter Zijlstra <peterz@...radead.org>
> Cc: Quentin Monnet <quentin.monnet@...ronome.com>
> Cc: Song Liu <songliubraving@...com>
> Cc: Stanislav Fomichev <sdf@...gle.com>
> Cc: Yonghong Song <yhs@...com>
> Link: https://lkml.kernel.org/n/tip-rrnxuhvety3j3rf0r9zlbfro@git.kernel.org
> Signed-off-by: Arnaldo Carvalho de Melo <acme@...hat.com>

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

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ