On Tue, Sep 26, 2017 at 08:35:22AM -0700, Jakub Kicinski wrote:
> Add a simple tool for querying and updating BPF objects on the system.
> 
> Signed-off-by: Jakub Kicinski <jakub.kicin...@netronome.com>
> Reviewed-by: Simon Horman <simon.hor...@netronome.com>
> ---
>  tools/bpf/Makefile             |  18 +-
>  tools/bpf/bpftool/Makefile     |  80 +++++
>  tools/bpf/bpftool/common.c     | 214 ++++++++++++
>  tools/bpf/bpftool/jit_disasm.c |  83 +++++
>  tools/bpf/bpftool/main.c       | 212 ++++++++++++
>  tools/bpf/bpftool/main.h       |  99 ++++++
>  tools/bpf/bpftool/map.c        | 742 
> +++++++++++++++++++++++++++++++++++++++++
>  tools/bpf/bpftool/prog.c       | 392 ++++++++++++++++++++++
>  8 files changed, 1837 insertions(+), 3 deletions(-)
...
> +static int do_help(int argc, char **argv)
> +{
> +     fprintf(stderr,
> +             "Usage: %s %s show   [MAP]\n"
> +             "       %s %s dump    MAP\n"
> +             "       %s %s update  MAP  key BYTES value VALUE 
> [UPDATE_FLAGS]\n"
> +             "       %s %s lookup  MAP  key BYTES\n"
> +             "       %s %s getnext MAP [key BYTES]\n"
> +             "       %s %s delete  MAP  key BYTES\n"
> +             "       %s %s pin     MAP  FILE\n"
> +             "       %s %s help\n"
> +             "\n"
> +             "       MAP := { id MAP_ID | pinned FILE }\n"
> +             "       " HELP_SPEC_PROGRAM "\n"
> +             "       VALUE := { BYTES | MAP | PROG }\n"
> +             "       UPDATE_FLAGS := { any | exist | noexist }\n"
> +             "",

overall looks good to me, but still difficult to grasp how to use it.
Can you add README with example usage and expected output?

Acked-by: Alexei Starovoitov <a...@kernel.org>

You also realize that you're signing up maintaining this tool, right? ;)

Reply via email to