All of lore.kernel.org
 help / color / mirror / Atom feed
From: Mark Rutland <mark.rutland@arm.com>
To: Alexei Starovoitov <alexei.starovoitov@gmail.com>
Cc: Puranjay Mohan <puranjay12@gmail.com>,
	Florent Revest <revest@chromium.org>,
	Daniel Borkmann <daniel@iogearbox.net>,
	Alexei Starovoitov <ast@kernel.org>,
	Andrii Nakryiko <andrii@kernel.org>,
	Martin KaFai Lau <martin.lau@linux.dev>,
	Song Liu <song@kernel.org>,
	Catalin Marinas <catalin.marinas@arm.com>,
	bpf <bpf@vger.kernel.org>, KP Singh <kpsingh@kernel.org>,
	linux-arm-kernel <linux-arm-kernel@lists.infradead.org>,
	LKML <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH bpf-next v4 0/3] bpf, arm64: use BPF prog pack allocator in BPF JIT
Date: Thu, 3 Aug 2023 12:13:00 +0100	[thread overview]
Message-ID: <ZMuLvKRbPfOK0IpN@FVFF77S0Q05N> (raw)
In-Reply-To: <CAADnVQJJHiSZPZFpu1n-oQLEsUptacSzF7FdOKfO6OEoKz-jXg@mail.gmail.com>

Hi Alexei,

On Wed, Aug 02, 2023 at 02:02:39PM -0700, Alexei Starovoitov wrote:
> On Sun, Jul 30, 2023 at 10:22 AM Puranjay Mohan <puranjay12@gmail.com> wrote:
> >
> > Hi Mark,
> > I am really looking forward to your feedback on this series.
> >
> > On Mon, Jul 17, 2023 at 9:50 AM Puranjay Mohan <puranjay12@gmail.com> wrote:
> > >
> > > Hi Mark,
> > >
> > > On Mon, Jul 3, 2023 at 7:15 PM Mark Rutland <mark.rutland@arm.com> wrote:
> > > >
> > > > On Mon, Jul 03, 2023 at 06:40:21PM +0200, Daniel Borkmann wrote:
> > > > > Hi Mark,
> > > >
> > > > Hi Daniel,
> > > >
> > > > > On 6/26/23 10:58 AM, Puranjay Mohan wrote:
> > > > > > BPF programs currently consume a page each on ARM64. For systems with many BPF
> > > > > > programs, this adds significant pressure to instruction TLB. High iTLB pressure
> > > > > > usually causes slow down for the whole system.
> > > > > >
> > > > > > Song Liu introduced the BPF prog pack allocator[1] to mitigate the above issue.
> > > > > > It packs multiple BPF programs into a single huge page. It is currently only
> > > > > > enabled for the x86_64 BPF JIT.
> > > > > >
> > > > > > This patch series enables the BPF prog pack allocator for the ARM64 BPF JIT.
> > > >
> > > > > If you get a chance to take another look at the v4 changes from Puranjay and
> > > > > in case they look good to you reply with an Ack, that would be great.
> > > >
> > > > Sure -- this is on my queue of things to look at; it might just take me a few
> > > > days to get the time to give this a proper look.
> > > >
> > > > Thanks,
> > > > Mark.
> > >
> > > I am eagerly looking forward to your feedback on this series.
> 
> Mark, Catalin, Florent, KP,
> 
> This patch set was submitted on June 26 !

I appreciate this was sent a while ago, but I have been stuck on some urgent
bug-fixing for the last few weeks, and my review bandwidth is therfore very
limited.

Given Puranjay had previously told me he was doing this as a side project for
fun, and given no-one had told me this was urgent, I assumed that this wasn't a
major blocker and could wait.

I should have sent a holding reply to that effect; sorry.

The series addresses my original concern. However, in looking at it I think
there may me a wider potential isssue w.r.t. the way instruction memory gets
reused, because as writtten today the architecture doesn't seem to have a
guarantee on when instruction fetches are completed and therefore when it's
safe to modify instruction memory. Usually we're saved by TLB maintenance,
which this series avoids by design.

I unfortunately haven't had the time to dig into that, poke our architects,
etc.

So how urgent is this?

Thanks,
Mark.

WARNING: multiple messages have this Message-ID (diff)
From: Mark Rutland <mark.rutland@arm.com>
To: Alexei Starovoitov <alexei.starovoitov@gmail.com>
Cc: Puranjay Mohan <puranjay12@gmail.com>,
	Florent Revest <revest@chromium.org>,
	Daniel Borkmann <daniel@iogearbox.net>,
	Alexei Starovoitov <ast@kernel.org>,
	Andrii Nakryiko <andrii@kernel.org>,
	Martin KaFai Lau <martin.lau@linux.dev>,
	Song Liu <song@kernel.org>,
	Catalin Marinas <catalin.marinas@arm.com>,
	bpf <bpf@vger.kernel.org>, KP Singh <kpsingh@kernel.org>,
	linux-arm-kernel <linux-arm-kernel@lists.infradead.org>,
	LKML <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH bpf-next v4 0/3] bpf, arm64: use BPF prog pack allocator in BPF JIT
Date: Thu, 3 Aug 2023 12:13:00 +0100	[thread overview]
Message-ID: <ZMuLvKRbPfOK0IpN@FVFF77S0Q05N> (raw)
In-Reply-To: <CAADnVQJJHiSZPZFpu1n-oQLEsUptacSzF7FdOKfO6OEoKz-jXg@mail.gmail.com>

Hi Alexei,

On Wed, Aug 02, 2023 at 02:02:39PM -0700, Alexei Starovoitov wrote:
> On Sun, Jul 30, 2023 at 10:22 AM Puranjay Mohan <puranjay12@gmail.com> wrote:
> >
> > Hi Mark,
> > I am really looking forward to your feedback on this series.
> >
> > On Mon, Jul 17, 2023 at 9:50 AM Puranjay Mohan <puranjay12@gmail.com> wrote:
> > >
> > > Hi Mark,
> > >
> > > On Mon, Jul 3, 2023 at 7:15 PM Mark Rutland <mark.rutland@arm.com> wrote:
> > > >
> > > > On Mon, Jul 03, 2023 at 06:40:21PM +0200, Daniel Borkmann wrote:
> > > > > Hi Mark,
> > > >
> > > > Hi Daniel,
> > > >
> > > > > On 6/26/23 10:58 AM, Puranjay Mohan wrote:
> > > > > > BPF programs currently consume a page each on ARM64. For systems with many BPF
> > > > > > programs, this adds significant pressure to instruction TLB. High iTLB pressure
> > > > > > usually causes slow down for the whole system.
> > > > > >
> > > > > > Song Liu introduced the BPF prog pack allocator[1] to mitigate the above issue.
> > > > > > It packs multiple BPF programs into a single huge page. It is currently only
> > > > > > enabled for the x86_64 BPF JIT.
> > > > > >
> > > > > > This patch series enables the BPF prog pack allocator for the ARM64 BPF JIT.
> > > >
> > > > > If you get a chance to take another look at the v4 changes from Puranjay and
> > > > > in case they look good to you reply with an Ack, that would be great.
> > > >
> > > > Sure -- this is on my queue of things to look at; it might just take me a few
> > > > days to get the time to give this a proper look.
> > > >
> > > > Thanks,
> > > > Mark.
> > >
> > > I am eagerly looking forward to your feedback on this series.
> 
> Mark, Catalin, Florent, KP,
> 
> This patch set was submitted on June 26 !

I appreciate this was sent a while ago, but I have been stuck on some urgent
bug-fixing for the last few weeks, and my review bandwidth is therfore very
limited.

Given Puranjay had previously told me he was doing this as a side project for
fun, and given no-one had told me this was urgent, I assumed that this wasn't a
major blocker and could wait.

I should have sent a holding reply to that effect; sorry.

The series addresses my original concern. However, in looking at it I think
there may me a wider potential isssue w.r.t. the way instruction memory gets
reused, because as writtten today the architecture doesn't seem to have a
guarantee on when instruction fetches are completed and therefore when it's
safe to modify instruction memory. Usually we're saved by TLB maintenance,
which this series avoids by design.

I unfortunately haven't had the time to dig into that, poke our architects,
etc.

So how urgent is this?

Thanks,
Mark.

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

  reply	other threads:[~2023-08-03 11:13 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-06-26  8:58 [PATCH bpf-next v4 0/3] bpf, arm64: use BPF prog pack allocator in BPF JIT Puranjay Mohan
2023-06-26  8:58 ` Puranjay Mohan
2023-06-26  8:58 ` [PATCH bpf-next v4 1/3] bpf: make bpf_prog_pack allocator portable Puranjay Mohan
2023-06-26  8:58   ` Puranjay Mohan
2023-06-26  8:58 ` [PATCH bpf-next v4 2/3] arm64: patching: Add aarch64_insn_copy() Puranjay Mohan
2023-06-26  8:58   ` Puranjay Mohan
2023-06-26  8:58 ` [PATCH bpf-next v4 3/3] bpf, arm64: use bpf_jit_binary_pack_alloc Puranjay Mohan
2023-06-26  8:58   ` Puranjay Mohan
2023-08-15 14:09   ` Puranjay Mohan
2023-08-15 14:09     ` Puranjay Mohan
2023-08-16 13:25     ` Daniel Borkmann
2023-08-16 13:25       ` Daniel Borkmann
2023-06-30 17:20 ` [PATCH bpf-next v4 0/3] bpf, arm64: use BPF prog pack allocator in BPF JIT Florent Revest
2023-06-30 17:20   ` Florent Revest
2023-07-03 16:40 ` Daniel Borkmann
2023-07-03 16:40   ` Daniel Borkmann
2023-07-03 17:15   ` Mark Rutland
2023-07-03 17:15     ` Mark Rutland
2023-07-03 17:54     ` Daniel Borkmann
2023-07-03 17:54       ` Daniel Borkmann
2023-07-17  7:50     ` Puranjay Mohan
2023-07-17  7:50       ` Puranjay Mohan
2023-07-30 17:22       ` Puranjay Mohan
2023-07-30 17:22         ` Puranjay Mohan
2023-08-02 21:02         ` Alexei Starovoitov
2023-08-02 21:02           ` Alexei Starovoitov
2023-08-03 11:13           ` Mark Rutland [this message]
2023-08-03 11:13             ` Mark Rutland
2023-08-03 16:15             ` Alexei Starovoitov
2023-08-03 16:15               ` Alexei Starovoitov
2023-08-03 16:32               ` Florent Revest
2023-08-03 16:32                 ` Florent Revest
2023-08-04 15:11             ` Puranjay Mohan
2023-08-04 15:11               ` Puranjay Mohan
2023-11-02 15:59             ` Mark Rutland
2023-11-02 15:59               ` Mark Rutland

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=ZMuLvKRbPfOK0IpN@FVFF77S0Q05N \
    --to=mark.rutland@arm.com \
    --cc=alexei.starovoitov@gmail.com \
    --cc=andrii@kernel.org \
    --cc=ast@kernel.org \
    --cc=bpf@vger.kernel.org \
    --cc=catalin.marinas@arm.com \
    --cc=daniel@iogearbox.net \
    --cc=kpsingh@kernel.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=martin.lau@linux.dev \
    --cc=puranjay12@gmail.com \
    --cc=revest@chromium.org \
    --cc=song@kernel.org \
    /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.