lkml.org 
[lkml]   [2020]   [Jul]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Date
SubjectRe: linux-next: Tree for Jul 27 (kernel/bpf/syscall.o)
On Mon, Jul 27, 2020 at 11:01 PM Randy Dunlap <rdunlap@infradead.org> wrote:
>
> On 7/27/20 10:48 PM, Andrii Nakryiko wrote:
> > On Mon, Jul 27, 2020 at 11:58 AM Randy Dunlap <rdunlap@infradead.org> wrote:
> >>
> >> On 7/27/20 6:23 AM, Stephen Rothwell wrote:
> >>> Hi all,
> >>>
> >>> Changes since 20200724:
> >>>
> >>
> >> on i386:
> >> when CONFIG_XPS is not set/enabled:
> >>
> >> ld: kernel/bpf/syscall.o: in function `__do_sys_bpf':
> >> syscall.c:(.text+0x4482): undefined reference to `bpf_xdp_link_attach'
> >>
> >
> > I can't repro this on x86-64 with CONFIG_XPS unset. Do you mind
> > sharing the exact config you've used?
>
> No problem. I see this on i386 or x86_64. I am attaching the x86_64
> randconfig file instead of the i386 one.
>
> > I see that kernel/bpf/syscall.c doesn't include linux/netdevice.h
> > directly, so something must be preventing netdevice.h to eventually
> > get to bpf/syscall.c, but instead of guessing on the fix, I'd like to
> > repro it first. Thanks!
>
> The build failure was causing me to see lots of builds failing, so I made
> a simple patch so that I could get past this issue. My patch follows.
> Feel free to fix it any way you like.
>

I was confused for a while by CONFIG_XPS, as nothing really depends on
it. So it turned out the real dependency is CONFIG_NET, which is also
unset in your random config. I just sent a fix, thanks for reporting
and sharing the config!


> Thanks.
> ---
> ---
> kernel/bpf/syscall.c | 4 ++++
> 1 file changed, 4 insertions(+)
>
> --- mmotm-2020-0727-1818.orig/kernel/bpf/syscall.c
> +++ mmotm-2020-0727-1818/kernel/bpf/syscall.c
> @@ -3924,7 +3924,11 @@ static int link_create(union bpf_attr *a
> ret = netns_bpf_link_create(attr, prog);
> break;
> case BPF_PROG_TYPE_XDP:
> +#ifdef CONFIG_XPS
> ret = bpf_xdp_link_attach(attr, prog);
> +#else
> + ret = -EINVAL;
> +#endif
> break;
> default:
> ret = -EINVAL;
>

\
 
 \ /
  Last update: 2020-07-28 21:09    [W:0.047 / U:0.048 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site