From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Borkmann Subject: Re: [PATCH bpf-next v7 3/5] libbpf: add error reporting in XDP Date: Sat, 27 Jan 2018 02:28:48 +0100 Message-ID: <0291c0fe-d8c6-1072-3069-4b3000d290fe@iogearbox.net> References: <4dc597a1-5046-3805-eb81-03a23bf0acbb@iogearbox.net> <20180125000548.12320-1-eric@regit.org> <20180125000548.12320-4-eric@regit.org> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Cc: alexei.starovoitov@gmail.com, netdev@vger.kernel.org, linux-kernel@vger.kernel.org To: Eric Leblond Return-path: Received: from www62.your-server.de ([213.133.104.62]:58408 "EHLO www62.your-server.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751264AbeA0B2u (ORCPT ); Fri, 26 Jan 2018 20:28:50 -0500 In-Reply-To: <20180125000548.12320-4-eric@regit.org> Content-Language: en-US Sender: netdev-owner@vger.kernel.org List-ID: On 01/25/2018 01:05 AM, Eric Leblond wrote: > Parse netlink ext attribute to get the error message returned by > the card. Code is partially take from libnl. > > We add netlink.h to the uapi include of tools. And we need to > avoid include of userspace netlink header to have a successful > build of sample so nlattr.h has a define to avoid > the inclusion. Using a direct define could have been an issue > as NLMSGERR_ATTR_MAX can change in the future. > > We also define SOL_NETLINK if not defined to avoid to have to > copy socket.h for a fixed value. > > Signed-off-by: Eric Leblond > Acked-by: Alexei Starovoitov > > remote rtne > > Signed-off-by: Eric Leblond Some leftover artifact from squashing commits? > samples/bpf/Makefile | 2 +- > tools/lib/bpf/Build | 2 +- > tools/lib/bpf/bpf.c | 13 +++- > tools/lib/bpf/nlattr.c | 187 +++++++++++++++++++++++++++++++++++++++++++++++++ > tools/lib/bpf/nlattr.h | 72 +++++++++++++++++++ > 5 files changed, 273 insertions(+), 3 deletions(-) > create mode 100644 tools/lib/bpf/nlattr.c > create mode 100644 tools/lib/bpf/nlattr.h > > diff --git a/samples/bpf/Makefile b/samples/bpf/Makefile > index 7f61a3d57fa7..5c4cd3745282 100644 > --- a/samples/bpf/Makefile > +++ b/samples/bpf/Makefile > @@ -45,7 +45,7 @@ hostprogs-y += xdp_rxq_info > hostprogs-y += syscall_tp > > # Libbpf dependencies > -LIBBPF := ../../tools/lib/bpf/bpf.o > +LIBBPF := ../../tools/lib/bpf/bpf.o ../../tools/lib/bpf/nlattr.o > CGROUP_HELPERS := ../../tools/testing/selftests/bpf/cgroup_helpers.o > > test_lru_dist-objs := test_lru_dist.o $(LIBBPF) > diff --git a/tools/lib/bpf/Build b/tools/lib/bpf/Build > index d8749756352d..64c679d67109 100644 > --- a/tools/lib/bpf/Build > +++ b/tools/lib/bpf/Build > @@ -1 +1 @@ > -libbpf-y := libbpf.o bpf.o > +libbpf-y := libbpf.o bpf.o nlattr.o > diff --git a/tools/lib/bpf/bpf.c b/tools/lib/bpf/bpf.c > index 749a447ec9ed..765fd95b0657 100644 > --- a/tools/lib/bpf/bpf.c > +++ b/tools/lib/bpf/bpf.c > @@ -27,7 +27,7 @@ > #include "bpf.h" > #include "libbpf.h" > #include "nlattr.h" > -#include > +#include Okay, so here it's put back from prior added uapi/linux/rtnetlink.h into linux/rtnetlink.h. Could you add this properly in the first commit rather than relative adjustment/fix within the same set? > #include > #include > > @@ -37,6 +37,10 @@ > #define IFLA_XDP_FLAGS 3 > #endif > > +#ifndef SOL_NETLINK > +#define SOL_NETLINK 270 > +#endif This would need include/linux/socket.h into tools/ include infra as well, no? > /* > * When building perf, unistd.h is overridden. __NR_bpf is > * required to be defined explicitly. > @@ -441,6 +445,7 @@ int bpf_set_link_xdp_fd(int ifindex, int fd, __u32 flags) > struct nlmsghdr *nh; > struct nlmsgerr *err; > socklen_t addrlen;