[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAJ8uoz2yp=hkuq6bS+g4zUyyR_QJ4UzWyxqvxrFqCqK-oPV2Dw@mail.gmail.com>
Date: Thu, 31 Jan 2019 11:44:00 +0100
From: Magnus Karlsson <magnus.karlsson@...il.com>
To: Daniel Borkmann <daniel@...earbox.net>
Cc: Magnus Karlsson <magnus.karlsson@...el.com>,
Björn Töpel <bjorn.topel@...el.com>,
ast@...nel.org, Network Development <netdev@...r.kernel.org>,
Jakub Kicinski <jakub.kicinski@...ronome.com>,
Björn Töpel <bjorn.topel@...il.com>,
"Zhang, Qi Z" <qi.z.zhang@...el.com>,
Jesper Dangaard Brouer <brouer@...hat.com>
Subject: Re: [PATCH bpf-next v3 2/3] libbpf: add support for using AF_XDP sockets
On Thu, Jan 31, 2019 at 11:07 AM Daniel Borkmann <daniel@...earbox.net> wrote:
>
> On 01/29/2019 04:12 PM, Magnus Karlsson wrote:
> > This commit adds AF_XDP support to libbpf. The main reason for this is
> > to facilitate writing applications that use AF_XDP by offering
> > higher-level APIs that hide many of the details of the AF_XDP
> > uapi. This is in the same vein as libbpf facilitates XDP adoption by
> > offering easy-to-use higher level interfaces of XDP
> > functionality. Hopefully this will facilitate adoption of AF_XDP, make
> > applications using it simpler and smaller, and finally also make it
> > possible for applications to benefit from optimizations in the AF_XDP
> > user space access code. Previously, people just copied and pasted the
> > code from the sample application into their application, which is not
> > desirable.
> >
> > The interface is composed of two parts:
> >
> > * Low-level access interface to the four rings and the packet
> > * High-level control plane interface for creating and setting
> > up umems and af_xdp sockets as well as a simple XDP program.
> >
> > Signed-off-by: Magnus Karlsson <magnus.karlsson@...el.com>
> [...]
> > libbpf ABI
> > ==========
> >
> > diff --git a/tools/lib/bpf/libbpf.map b/tools/lib/bpf/libbpf.map
> > index 266bc95..d294843 100644
> > --- a/tools/lib/bpf/libbpf.map
> > +++ b/tools/lib/bpf/libbpf.map
> > @@ -121,6 +121,18 @@ LIBBPF_0.0.1 {
> > libbpf_prog_type_by_name;
> > libbpf_set_print;
> > libbpf_strerror;
> > + xsk_ring_cons__peek;
> > + xsk_ring_cons__release;
> > + xsk_ring_prod__reserve;
> > + xsk_ring_prod__submit;
> > + xsk_umem__get_data;
> > + xsk_umem__get_data_raw;
> > + xsk_umem__create;
> > + xsk_socket__create;
> > + xsk_umem__delete;
> > + xsk_socket__delete;
> > + xsk_umem__fd;
> > + xsk_socket__fd;
>
> This definitely needs to be placed under LIBBPF_0.0.2 where we have bpf_probe_*
> that were added in this cycle.
OK. Will move it to LIBBPF_0.0.2.
Thanks: Magnus
>
> > local:
> > *;
> > };
> > diff --git a/tools/lib/bpf/xsk.c b/tools/lib/bpf/xsk.c
Powered by blists - more mailing lists