[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20171220.161644.274941609957500499.davem@davemloft.net>
Date: Wed, 20 Dec 2017 16:16:44 -0500 (EST)
From: David Miller <davem@...emloft.net>
To: alexei.starovoitov@...il.com
Cc: daniel@...earbox.net, ast@...nel.org, netdev@...r.kernel.org
Subject: Re: pull-request: bpf-next 2017-12-18
From: Alexei Starovoitov <alexei.starovoitov@...il.com>
Date: Mon, 18 Dec 2017 22:28:30 -0800
> On Mon, Dec 18, 2017 at 10:51:53AM -0500, David Miller wrote:
>> From: Daniel Borkmann <daniel@...earbox.net>
>> Date: Mon, 18 Dec 2017 01:33:07 +0100
>>
>> > The following pull-request contains BPF updates for your *net-next* tree.
>> >
>> > The main changes are:
>> >
>> > 1) Allow arbitrary function calls from one BPF function to another BPF function.
>> > As of today when writing BPF programs, __always_inline had to be used in
>> > the BPF C programs for all functions, unnecessarily causing LLVM to inflate
>> > code size. Handle this more naturally with support for BPF to BPF calls
>> > such that this __always_inline restriction can be overcome. As a result,
>> > it allows for better optimized code and finally enables to introduce core
>> > BPF libraries in the future that can be reused out of different projects.
>> > x86 and arm64 JIT support was added as well, from Alexei.
>>
>> Exciting... but now there's a lot of JIT work to do.
>
> I've looked at sparc64. It should be simpler than arm64.
> First reaction was that it would need dumb version of
> emit_loadimm64() (similar to arm's emit_addr_mov_i64), but not,
> since it's not used in emit_call.
> I can take a stab at it, but cannot test. The most time
> consuming part is to setup the latest llvm on the system
> to compile *_noinline.c tests.
> Note to self, I really need to make test_verifier run the tests.
I think I understand how this new stuff works, I'll take a stab at
doing the sparc64 JIT bits.
Powered by blists - more mailing lists