From: Will Deacon <will.deacon@arm.com>
To: Daniel Borkmann <daniel@iogearbox.net>
Cc: Mark Rutland <mark.rutland@arm.com>,
Kees Cook <keescook@chromium.org>,
Eric Dumazet <eric.dumazet@gmail.com>,
Jann Horn <jannh@google.com>,
Catalin Marinas <catalin.marinas@arm.com>,
Ard Biesheuvel <ard.biesheuvel@linaro.org>,
Alexei Starovoitov <ast@kernel.org>,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
"<netdev@vger.kernel.org>" <netdev@vger.kernel.org>,
Arnd Bergmann <arnd@arndb.de>, Jessica Yu <jeyu@kernel.org>,
Rick Edgecombe <rick.p.edgecombe@intel.com>,
"David S. Miller" <davem@davemloft.net>,
linux-arm-kernel <linux-arm-kernel@lists.infradead.org>
Subject: Re: [PATCH v4 2/2] arm64/bpf: don't allocate BPF JIT programs in module memory
Date: Wed, 5 Dec 2018 13:24:44 +0000 [thread overview]
Message-ID: <20181205132444.GA15631@arm.com> (raw)
In-Reply-To: <12954298-de06-349e-6df2-c218e5bf09a3@iogearbox.net>
On Wed, Dec 05, 2018 at 01:24:17PM +0100, Daniel Borkmann wrote:
> On 12/04/2018 04:45 PM, Ard Biesheuvel wrote:
> > On Mon, 3 Dec 2018 at 13:49, Will Deacon <will.deacon@arm.com> wrote:
> >> On Fri, Nov 30, 2018 at 08:20:06PM +0100, Ard Biesheuvel wrote:
> >>> On Fri, 30 Nov 2018 at 19:26, Will Deacon <will.deacon@arm.com> wrote:
> >>>> On Fri, Nov 23, 2018 at 11:18:04PM +0100, Ard Biesheuvel wrote:
> >>>>> diff --git a/arch/arm64/net/bpf_jit_comp.c b/arch/arm64/net/bpf_jit_comp.c
> >>>>> index a6fdaea07c63..76c2ab40c02d 100644
> >>>>> --- a/arch/arm64/net/bpf_jit_comp.c
> >>>>> +++ b/arch/arm64/net/bpf_jit_comp.c
> >>>>> @@ -940,3 +940,16 @@ struct bpf_prog *bpf_int_jit_compile(struct bpf_prog *prog)
> >>>>> tmp : orig_prog);
> >>>>> return prog;
> >>>>> }
> >>>>> +
> >>>>> +void *bpf_jit_alloc_exec(unsigned long size)
> >>>>> +{
> >>>>> + return __vmalloc_node_range(size, PAGE_SIZE, BPF_JIT_REGION_START,
> >>>>> + BPF_JIT_REGION_END, GFP_KERNEL,
> >>>>> + PAGE_KERNEL_EXEC, 0, NUMA_NO_NODE,
> >>>>> + __builtin_return_address(0));
> >>>>
> >>>> I guess we'll want VM_IMMEDIATE_UNMAP here if Rich gets that merged.
> >>>
> >>> I think akpm already queued up that patch.
> >>>
> >>>> In the
> >>>> meantime, I wonder if it's worth zeroing the region in bpf_jit_free_exec()?
> >>>> (although we'd need the size information...).
> >>>>
> >>>
> >>> Not sure. What exactly would that achieve?
> >>
> >> I think the zero encoding is guaranteed to be undefined, so it would limit
> >> the usefulness of any stale, executable TLB entries. However, we'd also need
> >> cache maintenance to make that stuff visible to the I side, so it's probably
> >> not worth it, especially if akpm has queued the stuff from Rich.
> >>
> >> Maybe just add an:
> >>
> >> /* FIXME: Remove this when VM_IMMEDIATE_UNMAP is supported */
> >> #ifndef VM_IMMEDIATE_UNMAP
> >> #define VM_IMMEDIATE_UNMAP 0
> >> #endif
> >>
> >> so we remember to come back and sort this out? Up to you.
> >
> > I'll just make a note to send out that patch once the definition lands via -akpm
>
> Could I get an ACK from you for this patch, then I'd take the series into bpf-next.
Gah, thanks for the ping: I thought I acked this initially, but turns out I
didn't.
Acked-by: Will Deacon <will.deacon@arm.com>
Will
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2018-12-05 13:24 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-11-23 22:18 [PATCH v4 0/2] bpf: permit JIT allocations to be served outside the module region Ard Biesheuvel
2018-11-23 22:18 ` [PATCH v4 1/2] bpf: add __weak hook for allocating executable memory Ard Biesheuvel
2018-11-26 17:02 ` Edgecombe, Rick P
2018-12-05 23:37 ` Kees Cook
2018-11-23 22:18 ` [PATCH v4 2/2] arm64/bpf: don't allocate BPF JIT programs in module memory Ard Biesheuvel
2018-11-30 18:26 ` Will Deacon
2018-11-30 19:20 ` Ard Biesheuvel
2018-12-03 12:49 ` Will Deacon
2018-12-04 15:45 ` Ard Biesheuvel
2018-12-05 12:24 ` Daniel Borkmann
2018-12-05 13:24 ` Will Deacon [this message]
2018-12-05 15:40 ` Daniel Borkmann
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20181205132444.GA15631@arm.com \
--to=will.deacon@arm.com \
--cc=ard.biesheuvel@linaro.org \
--cc=arnd@arndb.de \
--cc=ast@kernel.org \
--cc=catalin.marinas@arm.com \
--cc=daniel@iogearbox.net \
--cc=davem@davemloft.net \
--cc=eric.dumazet@gmail.com \
--cc=jannh@google.com \
--cc=jeyu@kernel.org \
--cc=keescook@chromium.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mark.rutland@arm.com \
--cc=netdev@vger.kernel.org \
--cc=rick.p.edgecombe@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.