[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <alpine.DEB.2.21.9999.2001031730370.283180@viisi.sifive.com>
Date: Fri, 3 Jan 2020 17:32:02 -0800 (PST)
From: Paul Walmsley <paul.walmsley@...ive.com>
To: Björn Töpel <bjorn.topel@...il.com>
cc: Daniel Borkmann <daniel@...earbox.net>,
Palmer Dabbelt <palmer@...belt.com>,
Albert Ou <aou@...s.berkeley.edu>,
Alexei Starovoitov <ast@...nel.org>,
Netdev <netdev@...r.kernel.org>, linux-riscv@...ts.infradead.org,
bpf <bpf@...r.kernel.org>
Subject: Re: [PATCH bpf-next v2 6/9] riscv, bpf: provide RISC-V specific JIT
image alloc/free
On Wed, 18 Dec 2019, Björn Töpel wrote:
> On Mon, 16 Dec 2019 at 16:09, Daniel Borkmann <daniel@...earbox.net> wrote:
> >
> > On 12/16/19 10:13 AM, Björn Töpel wrote:
> > > This commit makes sure that the JIT images is kept close to the kernel
> > > text, so BPF calls can use relative calling with auipc/jalr or jal
> > > instead of loading the full 64-bit address and jalr.
> > >
> > > The BPF JIT image region is 128 MB before the kernel text.
> > >
> > > Signed-off-by: Björn Töpel <bjorn.topel@...il.com>
> > > ---
> > > arch/riscv/include/asm/pgtable.h | 4 ++++
> > > arch/riscv/net/bpf_jit_comp.c | 13 +++++++++++++
> > > 2 files changed, 17 insertions(+)
> > >
> > > diff --git a/arch/riscv/include/asm/pgtable.h b/arch/riscv/include/asm/pgtable.h
> > > index 7ff0ed4f292e..cc3f49415620 100644
> > > --- a/arch/riscv/include/asm/pgtable.h
> > > +++ b/arch/riscv/include/asm/pgtable.h
> > > @@ -404,6 +404,10 @@ static inline int ptep_clear_flush_young(struct vm_area_struct *vma,
> > > #define VMALLOC_END (PAGE_OFFSET - 1)
> > > #define VMALLOC_START (PAGE_OFFSET - VMALLOC_SIZE)
> > >
> > > +#define BPF_JIT_REGION_SIZE (SZ_128M)
> > > +#define BPF_JIT_REGION_START (PAGE_OFFSET - BPF_JIT_REGION_SIZE)
> > > +#define BPF_JIT_REGION_END (VMALLOC_END)
> > > +
> >
> > Series looks good to me, thanks; I'd like to get an ACK from Palmer/others on this one.
> >
>
> Palmer/Paul/Albert, any thoughts/input? I can respin the the series
> w/o the call optimizations (excluding this patch and the next), but
> I'd prefer not given it's a nice speed/clean up for calls.
Looks like Palmer's already reviewed it. One additional request: could
you update the VM layout debugging messages in arch/riscv/mm/init.c to
include this new area?
thanks,
- Paul
Powered by blists - more mailing lists