[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <36557463-D23A-432E-AA18-7731F43CEBA6@gmail.com>
Date: Mon, 11 Feb 2019 11:48:34 -0800
From: "Jonathan Lemon" <jonathan.lemon@...il.com>
To: "Magnus Karlsson" <magnus.karlsson@...el.com>
Cc: bjorn.topel@...el.com, ast@...nel.org, daniel@...earbox.net,
netdev@...r.kernel.org, jakub.kicinski@...ronome.com,
bjorn.topel@...il.com, qi.z.zhang@...el.com, brouer@...hat.com,
xiaolong.ye@...el.com
Subject: Re: [PATCH bpf-next v4 0/2] libbpf: adding AF_XDP support
On 8 Feb 2019, at 5:05, Magnus Karlsson wrote:
> This patch proposes to add 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.
I like the idea of encapsulating the boilerplate logic in a library.
I do think there is an important missing piece though - there should be
some code which queries the netdev for how many queues are attached, and
create the appropriate number of umem/AF_XDP sockets.
I ran into this issue when testing the current AF_XDP code - on my test
boxes, the mlx5 card has 55 channels (aka queues), so when the test program
binds only to channel 0, nothing works as expected, since not all traffic
is being intercepted. While obvious in hindsight, this took a while to
track down.
--
Jonathan
Powered by blists - more mailing lists