On Wed, 31 Jul 2019 03:48:20 +0900
"Daniel T. Lee" <danieltim...@gmail.com> wrote:

> By this commit, using `bpftool net load`, user can load XDP prog on
> interface. New type of enum 'net_load_type' has been made, as stated at
> cover-letter, the meaning of 'load' is, prog will be loaded on interface.

Why the keyword "load" ?
Why not "attach" (and "detach")?

For BPF there is a clear distinction between the "load" and "attach"
steps.  I know this is under subcommand "net", but to follow the
conversion of other subcommands e.g. "prog" there are both "load" and
"attach" commands.


> BPF prog will be loaded through libbpf 'bpf_set_link_xdp_fd'.

Again this is a "set" operation, not a "load" operation.

> Signed-off-by: Daniel T. Lee <danieltim...@gmail.com>

[...]
>  static int do_show(int argc, char **argv)
>  {
>       struct bpf_attach_info attach_info = {};
> @@ -305,13 +405,17 @@ static int do_help(int argc, char **argv)
>  
>       fprintf(stderr,
>               "Usage: %s %s { show | list } [dev <devname>]\n"
> +             "       %s %s load PROG LOAD_TYPE <devname>\n"

The "PROG" here does it correspond to the 'bpftool prog' syntax?:

 PROG := { id PROG_ID | pinned FILE | tag PROG_TAG }

>               "       %s %s help\n"
> +             "\n"
> +             "       " HELP_SPEC_PROGRAM "\n"
> +             "       LOAD_TYPE := { xdp | xdpgeneric | xdpdrv | xdpoffload 
> }\n"
>               "Note: Only xdp and tc attachments are supported now.\n"
>               "      For progs attached to cgroups, use \"bpftool cgroup\"\n"
>               "      to dump program attachments. For program types\n"
>               "      sk_{filter,skb,msg,reuseport} and lwt/seg6, please\n"
>               "      consult iproute2.\n",


-- 
Best regards,
  Jesper Dangaard Brouer
  MSc.CS, Principal Kernel Engineer at Red Hat
  LinkedIn: http://www.linkedin.com/in/brouer

Reply via email to