[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAADnVQJ5RLwhHXWQzYywX3pQJMGXr=+eHuSY4twRCa+4_w5bpg@mail.gmail.com>
Date: Fri, 15 Feb 2019 08:17:18 -0800
From: Alexei Starovoitov <alexei.starovoitov@...il.com>
To: Y Song <ys114321@...il.com>
Cc: Joe Stringer <joe@...d.net.nz>, bpf@...r.kernel.org,
netdev <netdev@...r.kernel.org>,
Daniel Borkmann <daniel@...earbox.net>,
Alexei Starovoitov <ast@...nel.org>
Subject: Re: [PATCH bpf-next 2/4] libbpf: Support 32-bit static data loads
On Thu, Feb 14, 2019 at 9:38 PM Y Song <ys114321@...il.com> wrote:
>
> On Mon, Feb 11, 2019 at 4:48 PM Joe Stringer <joe@...d.net.nz> wrote:
> >
> > Support loads of static 32-bit data when BPF writers make use of
> > convenience macros for accessing static global data variables. A later
> > patch in this series will demonstrate its usage in a selftest.
> >
> > As of LLVM-7, this technique only works with 32-bit data, as LLVM will
> > complain if this technique is attempted with data of other sizes:
> >
> > LLVM ERROR: Unsupported relocation: try to compile with -O2 or above,
> > or check your static variable usage
>
> A little bit clarification from compiler side.
> The above compiler error is to prevent people use static variables since current
> kernel/libbpf does not handle this. The compiler only warns if .bss or
> .data section
> has more than one definitions. The first definition always has section offset 0
> and the compiler did not warn.
ahh. missed that while playing with .s output.
when target is asm clang doesn't complain.
let's relax this llvm error.
will set of existing relocation be enough to generate
properly formed .o ?
or we need to define a new one?
Powered by blists - more mailing lists