All of lore.kernel.org
 help / color / mirror / Atom feed
From: KP Singh <kpsingh@kernel.org>
To: Will Deacon <will@kernel.org>
Cc: Daniel Borkmann <daniel@iogearbox.net>,
	jean-philippe.brucker@arm.com, Xu Kuohai <xukuohai@huawei.com>,
	bpf@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
	linux-kernel@vger.kernel.org, netdev@vger.kernel.org,
	Mark Rutland <mark.rutland@arm.com>,
	Catalin Marinas <catalin.marinas@arm.com>,
	Alexei Starovoitov <ast@kernel.org>,
	Zi Shen Lim <zlim.lnx@gmail.com>,
	Andrii Nakryiko <andrii@kernel.org>,
	Martin KaFai Lau <kafai@fb.com>, Song Liu <songliubraving@fb.com>,
	Yonghong Song <yhs@fb.com>,
	John Fastabend <john.fastabend@gmail.com>,
	"David S . Miller" <davem@davemloft.net>,
	Hideaki YOSHIFUJI <yoshfuji@linux-ipv6.org>,
	David Ahern <dsahern@kernel.org>,
	Thomas Gleixner <tglx@linutronix.de>,
	Ingo Molnar <mingo@redhat.com>, Borislav Petkov <bp@alien8.de>,
	Dave Hansen <dave.hansen@linux.intel.com>,
	x86@kernel.org, "H . Peter Anvin" <hpa@zytor.com>,
	Jakub Kicinski <kuba@kernel.org>,
	Jesper Dangaard Brouer <hawk@kernel.org>,
	Russell King <rmk+kernel@armlinux.org.uk>,
	James Morse <james.morse@arm.com>, Hou Tao <houtao1@huawei.com>,
	Jason Wang <wangborong@cdjrlc.com>
Subject: Re: [PATCH bpf-next v6 0/4] bpf trampoline for arm64
Date: Tue, 5 Jul 2022 20:34:39 +0200	[thread overview]
Message-ID: <CACYkzJ4e6qrB+HV7Nj=S-zCsPZjcxwMFCBMSnrYbdkLaD04Hqg@mail.gmail.com> (raw)
In-Reply-To: <20220705160045.GA1240@willie-the-truck>

On Tue, Jul 5, 2022 at 6:00 PM Will Deacon <will@kernel.org> wrote:
>
> Hi Daniel,
>
> On Thu, Jun 30, 2022 at 11:12:54PM +0200, Daniel Borkmann wrote:
> > On 6/25/22 6:12 PM, Xu Kuohai wrote:
> > > This patchset introduces bpf trampoline on arm64. A bpf trampoline converts
> > > native calling convention to bpf calling convention and is used to implement
> > > various bpf features, such as fentry, fexit, fmod_ret and struct_ops.
> > >
> > > The trampoline introduced does essentially the same thing as the bpf
> > > trampoline does on x86.
> > >
> > > Tested on raspberry pi 4b and qemu:
> > >
> > >   #18 /1     bpf_tcp_ca/dctcp:OK
> > >   #18 /2     bpf_tcp_ca/cubic:OK
> > >   #18 /3     bpf_tcp_ca/invalid_license:OK
> > >   #18 /4     bpf_tcp_ca/dctcp_fallback:OK
> > >   #18 /5     bpf_tcp_ca/rel_setsockopt:OK
> > >   #18        bpf_tcp_ca:OK
> > >   #51 /1     dummy_st_ops/dummy_st_ops_attach:OK
> > >   #51 /2     dummy_st_ops/dummy_init_ret_value:OK
> > >   #51 /3     dummy_st_ops/dummy_init_ptr_arg:OK
> > >   #51 /4     dummy_st_ops/dummy_multiple_args:OK
> > >   #51        dummy_st_ops:OK
> > >   #57 /1     fexit_bpf2bpf/target_no_callees:OK
> > >   #57 /2     fexit_bpf2bpf/target_yes_callees:OK
> > >   #57 /3     fexit_bpf2bpf/func_replace:OK
> > >   #57 /4     fexit_bpf2bpf/func_replace_verify:OK
> > >   #57 /5     fexit_bpf2bpf/func_sockmap_update:OK
> > >   #57 /6     fexit_bpf2bpf/func_replace_return_code:OK
> > >   #57 /7     fexit_bpf2bpf/func_map_prog_compatibility:OK
> > >   #57 /8     fexit_bpf2bpf/func_replace_multi:OK
> > >   #57 /9     fexit_bpf2bpf/fmod_ret_freplace:OK
> > >   #57        fexit_bpf2bpf:OK
> > >   #237       xdp_bpf2bpf:OK
> > >
> > > v6:
> > > - Since Mark is refactoring arm64 ftrace to support long jump and reduce the
> > >    ftrace trampoline overhead, it's not clear how we'll attach bpf trampoline
> > >    to regular kernel functions, so remove ftrace related patches for now.
> > > - Add long jump support for attaching bpf trampoline to bpf prog, since bpf
> > >    trampoline and bpf prog are allocated via vmalloc, there is chance the
> > >    distance exceeds the max branch range.
> > > - Collect ACK/Review-by, not sure if the ACK and Review-bys for bpf_arch_text_poke()
> > >    should be kept, since the changes to it is not trivial

+1 I need to give it another pass.

> > > - Update some commit messages and comments
> >
> > Given you've been taking a look and had objections in v5, would be great if you
> > can find some cycles for this v6.
>
> Mark's out at the moment, so I wouldn't hold this series up pending his ack.
> However, I agree that it would be good if _somebody_ from the Arm side can
> give it the once over, so I've added Jean-Philippe to cc in case he has time

Makes sense,  Jean-Philippe had worked on BPF trampolines for ARM.

> for a quick review. KP said he would also have a look, as he is interested

Thank you so much Will, I will give this another pass before the end
of the week.

> in this series landing.
>
> Failing that, I'll try to look this week, but I'm off next week and I don't
> want this to miss the merge window on my account.

Thanks for being considerate. Much appreciated.

- KP

>
> Cheers,
>
> Will

WARNING: multiple messages have this Message-ID (diff)
From: KP Singh <kpsingh@kernel.org>
To: Will Deacon <will@kernel.org>
Cc: Daniel Borkmann <daniel@iogearbox.net>,
	jean-philippe.brucker@arm.com,  Xu Kuohai <xukuohai@huawei.com>,
	bpf@vger.kernel.org,  linux-arm-kernel@lists.infradead.org,
	linux-kernel@vger.kernel.org,  netdev@vger.kernel.org,
	Mark Rutland <mark.rutland@arm.com>,
	 Catalin Marinas <catalin.marinas@arm.com>,
	Alexei Starovoitov <ast@kernel.org>,
	 Zi Shen Lim <zlim.lnx@gmail.com>,
	Andrii Nakryiko <andrii@kernel.org>,
	Martin KaFai Lau <kafai@fb.com>,
	 Song Liu <songliubraving@fb.com>, Yonghong Song <yhs@fb.com>,
	 John Fastabend <john.fastabend@gmail.com>,
	"David S . Miller" <davem@davemloft.net>,
	 Hideaki YOSHIFUJI <yoshfuji@linux-ipv6.org>,
	David Ahern <dsahern@kernel.org>,
	 Thomas Gleixner <tglx@linutronix.de>,
	Ingo Molnar <mingo@redhat.com>, Borislav Petkov <bp@alien8.de>,
	 Dave Hansen <dave.hansen@linux.intel.com>,
	x86@kernel.org,  "H . Peter Anvin" <hpa@zytor.com>,
	Jakub Kicinski <kuba@kernel.org>,
	 Jesper Dangaard Brouer <hawk@kernel.org>,
	Russell King <rmk+kernel@armlinux.org.uk>,
	 James Morse <james.morse@arm.com>, Hou Tao <houtao1@huawei.com>,
	 Jason Wang <wangborong@cdjrlc.com>
Subject: Re: [PATCH bpf-next v6 0/4] bpf trampoline for arm64
Date: Tue, 5 Jul 2022 20:34:39 +0200	[thread overview]
Message-ID: <CACYkzJ4e6qrB+HV7Nj=S-zCsPZjcxwMFCBMSnrYbdkLaD04Hqg@mail.gmail.com> (raw)
In-Reply-To: <20220705160045.GA1240@willie-the-truck>

On Tue, Jul 5, 2022 at 6:00 PM Will Deacon <will@kernel.org> wrote:
>
> Hi Daniel,
>
> On Thu, Jun 30, 2022 at 11:12:54PM +0200, Daniel Borkmann wrote:
> > On 6/25/22 6:12 PM, Xu Kuohai wrote:
> > > This patchset introduces bpf trampoline on arm64. A bpf trampoline converts
> > > native calling convention to bpf calling convention and is used to implement
> > > various bpf features, such as fentry, fexit, fmod_ret and struct_ops.
> > >
> > > The trampoline introduced does essentially the same thing as the bpf
> > > trampoline does on x86.
> > >
> > > Tested on raspberry pi 4b and qemu:
> > >
> > >   #18 /1     bpf_tcp_ca/dctcp:OK
> > >   #18 /2     bpf_tcp_ca/cubic:OK
> > >   #18 /3     bpf_tcp_ca/invalid_license:OK
> > >   #18 /4     bpf_tcp_ca/dctcp_fallback:OK
> > >   #18 /5     bpf_tcp_ca/rel_setsockopt:OK
> > >   #18        bpf_tcp_ca:OK
> > >   #51 /1     dummy_st_ops/dummy_st_ops_attach:OK
> > >   #51 /2     dummy_st_ops/dummy_init_ret_value:OK
> > >   #51 /3     dummy_st_ops/dummy_init_ptr_arg:OK
> > >   #51 /4     dummy_st_ops/dummy_multiple_args:OK
> > >   #51        dummy_st_ops:OK
> > >   #57 /1     fexit_bpf2bpf/target_no_callees:OK
> > >   #57 /2     fexit_bpf2bpf/target_yes_callees:OK
> > >   #57 /3     fexit_bpf2bpf/func_replace:OK
> > >   #57 /4     fexit_bpf2bpf/func_replace_verify:OK
> > >   #57 /5     fexit_bpf2bpf/func_sockmap_update:OK
> > >   #57 /6     fexit_bpf2bpf/func_replace_return_code:OK
> > >   #57 /7     fexit_bpf2bpf/func_map_prog_compatibility:OK
> > >   #57 /8     fexit_bpf2bpf/func_replace_multi:OK
> > >   #57 /9     fexit_bpf2bpf/fmod_ret_freplace:OK
> > >   #57        fexit_bpf2bpf:OK
> > >   #237       xdp_bpf2bpf:OK
> > >
> > > v6:
> > > - Since Mark is refactoring arm64 ftrace to support long jump and reduce the
> > >    ftrace trampoline overhead, it's not clear how we'll attach bpf trampoline
> > >    to regular kernel functions, so remove ftrace related patches for now.
> > > - Add long jump support for attaching bpf trampoline to bpf prog, since bpf
> > >    trampoline and bpf prog are allocated via vmalloc, there is chance the
> > >    distance exceeds the max branch range.
> > > - Collect ACK/Review-by, not sure if the ACK and Review-bys for bpf_arch_text_poke()
> > >    should be kept, since the changes to it is not trivial

+1 I need to give it another pass.

> > > - Update some commit messages and comments
> >
> > Given you've been taking a look and had objections in v5, would be great if you
> > can find some cycles for this v6.
>
> Mark's out at the moment, so I wouldn't hold this series up pending his ack.
> However, I agree that it would be good if _somebody_ from the Arm side can
> give it the once over, so I've added Jean-Philippe to cc in case he has time

Makes sense,  Jean-Philippe had worked on BPF trampolines for ARM.

> for a quick review. KP said he would also have a look, as he is interested

Thank you so much Will, I will give this another pass before the end
of the week.

> in this series landing.
>
> Failing that, I'll try to look this week, but I'm off next week and I don't
> want this to miss the merge window on my account.

Thanks for being considerate. Much appreciated.

- KP

>
> Cheers,
>
> Will

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

  reply	other threads:[~2022-07-05 18:34 UTC|newest]

Thread overview: 42+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-06-25 16:12 [PATCH bpf-next v6 0/4] bpf trampoline for arm64 Xu Kuohai
2022-06-25 16:12 ` Xu Kuohai
2022-06-25 16:12 ` [PATCH bpf-next v6 1/4] bpf: Remove is_valid_bpf_tramp_flags() Xu Kuohai
2022-06-25 16:12   ` Xu Kuohai
2022-06-25 16:12 ` [PATCH bpf-next v6 2/4] arm64: Add LDR (literal) instruction Xu Kuohai
2022-06-25 16:12   ` Xu Kuohai
2022-07-05 16:39   ` Will Deacon
2022-07-05 16:39     ` Will Deacon
2022-07-06  1:43     ` Xu Kuohai
2022-07-06  1:43       ` Xu Kuohai
2022-06-25 16:12 ` [PATCH bpf-next v6 3/4] bpf, arm64: Impelment bpf_arch_text_poke() for arm64 Xu Kuohai
2022-06-25 16:12   ` Xu Kuohai
2022-07-07 16:41   ` Jean-Philippe Brucker
2022-07-07 16:41     ` Jean-Philippe Brucker
2022-07-08  2:41     ` Xu Kuohai
2022-07-08  2:41       ` Xu Kuohai
2022-07-08  8:25       ` Jean-Philippe Brucker
2022-07-08  8:25         ` Jean-Philippe Brucker
2022-06-25 16:12 ` [PATCH bpf-next v6 4/4] bpf, arm64: bpf trampoline " Xu Kuohai
2022-06-25 16:12   ` Xu Kuohai
2022-07-07 16:37   ` Jean-Philippe Brucker
2022-07-07 16:37     ` Jean-Philippe Brucker
2022-07-08  4:35     ` Xu Kuohai
2022-07-08  4:35       ` Xu Kuohai
2022-07-08  8:24       ` Jean-Philippe Brucker
2022-07-08  8:24         ` Jean-Philippe Brucker
2022-07-08  9:08         ` Xu Kuohai
2022-07-08  9:08           ` Xu Kuohai
2022-06-30 21:12 ` [PATCH bpf-next v6 0/4] " Daniel Borkmann
2022-06-30 21:12   ` Daniel Borkmann
2022-07-05 16:00   ` Will Deacon
2022-07-05 16:00     ` Will Deacon
2022-07-05 18:34     ` KP Singh [this message]
2022-07-05 18:34       ` KP Singh
2022-07-07  3:35       ` Xu Kuohai
2022-07-07  3:35         ` Xu Kuohai
2022-07-06 16:08     ` Jean-Philippe Brucker
2022-07-06 16:08       ` Jean-Philippe Brucker
2022-07-06 16:11       ` Will Deacon
2022-07-06 16:11         ` Will Deacon
2022-07-07  2:56         ` Xu Kuohai
2022-07-07  2:56           ` Xu Kuohai

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='CACYkzJ4e6qrB+HV7Nj=S-zCsPZjcxwMFCBMSnrYbdkLaD04Hqg@mail.gmail.com' \
    --to=kpsingh@kernel.org \
    --cc=andrii@kernel.org \
    --cc=ast@kernel.org \
    --cc=bp@alien8.de \
    --cc=bpf@vger.kernel.org \
    --cc=catalin.marinas@arm.com \
    --cc=daniel@iogearbox.net \
    --cc=dave.hansen@linux.intel.com \
    --cc=davem@davemloft.net \
    --cc=dsahern@kernel.org \
    --cc=hawk@kernel.org \
    --cc=houtao1@huawei.com \
    --cc=hpa@zytor.com \
    --cc=james.morse@arm.com \
    --cc=jean-philippe.brucker@arm.com \
    --cc=john.fastabend@gmail.com \
    --cc=kafai@fb.com \
    --cc=kuba@kernel.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mark.rutland@arm.com \
    --cc=mingo@redhat.com \
    --cc=netdev@vger.kernel.org \
    --cc=rmk+kernel@armlinux.org.uk \
    --cc=songliubraving@fb.com \
    --cc=tglx@linutronix.de \
    --cc=wangborong@cdjrlc.com \
    --cc=will@kernel.org \
    --cc=x86@kernel.org \
    --cc=xukuohai@huawei.com \
    --cc=yhs@fb.com \
    --cc=yoshfuji@linux-ipv6.org \
    --cc=zlim.lnx@gmail.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.