From: Vishal Chourasia <vishalc@linux.ibm.com>
To: Naveen N Rao <naveen@kernel.org>
Cc: linuxppc-dev@lists.ozlabs.org,
linux-trace-kernel@vger.kernel.org, bpf@vger.kernel.org,
Michael Ellerman <mpe@ellerman.id.au>,
Steven Rostedt <rostedt@goodmis.org>,
Masami Hiramatsu <mhiramat@kernel.org>,
Nicholas Piggin <npiggin@gmail.com>,
Christophe Leroy <christophe.leroy@csgroup.eu>,
Masahiro Yamada <masahiroy@kernel.org>,
Mark Rutland <mark.rutland@arm.com>,
Alexei Starovoitov <ast@kernel.org>,
Daniel Borkmann <daniel@iogearbox.net>,
John Fastabend <john.fastabend@gmail.com>,
Andrii Nakryiko <andrii@kernel.org>, Song Liu <song@kernel.org>,
Jiri Olsa <jolsa@kernel.org>, Tejun Heo <tj@kernel.org>,
David Vernet <dvernet@meta.com>
Subject: Re: [RFC PATCH v3 00/11] powerpc: Add support for ftrace direct and BPF trampolines
Date: Mon, 24 Jun 2024 17:29:03 +0530 [thread overview]
Message-ID: <ZnlfhxvNnmM1mSVm@linux.ibm.com> (raw)
In-Reply-To: <cover.1718908016.git.naveen@kernel.org>
On Fri, Jun 21, 2024 at 12:24:03AM +0530, Naveen N Rao wrote:
> This is v3 of the patches posted here:
> http://lkml.kernel.org/r/cover.1718008093.git.naveen@kernel.org
>
> Since v2, I have addressed review comments from Steven and Masahiro
> along with a few fixes. Patches 7-11 are new in this series and add
> support for ftrace direct and bpf trampolines.
>
> This series depends on the patch series from Benjamin Gray adding
> support for patch_ulong():
> http://lkml.kernel.org/r/20240515024445.236364-1-bgray@linux.ibm.com
This patchset, along with its dependent patchset [2], enables support
for BPF schedulers introduced by the sched_ext patchset [1] on
Power Architecture.
Before this patchset, BPF schedulers were failing to load due to the
lack of trampoline support.
GitHub repo for sched_ext: https://github.com/sched-ext/sched_ext
Note: This repo has been archived. Please refer to the description
provided on the repo homepage for more details.
[1] v6 https://lore.kernel.org/lkml/20240501151312.635565-1-tj@kernel.org
[2] http://lkml.kernel.org/r/20240515024445.236364-1-bgray@linux.ibm.com
Thank you for the patch!
>
>
> - Naveen
>
>
> Naveen N Rao (11):
> powerpc/kprobes: Use ftrace to determine if a probe is at function
> entry
> powerpc/ftrace: Unify 32-bit and 64-bit ftrace entry code
> powerpc/module_64: Convert #ifdef to IS_ENABLED()
> powerpc/ftrace: Remove pointer to struct module from dyn_arch_ftrace
> kbuild: Add generic hook for architectures to use before the final
> vmlinux link
> powerpc64/ftrace: Move ftrace sequence out of line
> powerpc/ftrace: Add support for DYNAMIC_FTRACE_WITH_CALL_OPS
> powerpc/ftrace: Add support for DYNAMIC_FTRACE_WITH_DIRECT_CALLS
> samples/ftrace: Add support for ftrace direct samples on powerpc
> powerpc64/bpf: Fold bpf_jit_emit_func_call_hlp() into
> bpf_jit_emit_func_call_rel()
> powerpc64/bpf: Add support for bpf trampolines
>
> arch/Kconfig | 3 +
> arch/powerpc/Kconfig | 9 +
> arch/powerpc/Makefile | 8 +
> arch/powerpc/include/asm/ftrace.h | 29 +-
> arch/powerpc/include/asm/module.h | 5 +
> arch/powerpc/include/asm/ppc-opcode.h | 14 +
> arch/powerpc/kernel/asm-offsets.c | 11 +
> arch/powerpc/kernel/kprobes.c | 18 +-
> arch/powerpc/kernel/module_64.c | 67 +-
> arch/powerpc/kernel/trace/ftrace.c | 269 +++++++-
> arch/powerpc/kernel/trace/ftrace_64_pg.c | 73 +-
> arch/powerpc/kernel/trace/ftrace_entry.S | 210 ++++--
> arch/powerpc/kernel/vmlinux.lds.S | 3 +-
> arch/powerpc/net/bpf_jit.h | 11 +
> arch/powerpc/net/bpf_jit_comp.c | 702 +++++++++++++++++++-
> arch/powerpc/net/bpf_jit_comp32.c | 7 +-
> arch/powerpc/net/bpf_jit_comp64.c | 68 +-
> arch/powerpc/tools/Makefile | 10 +
> arch/powerpc/tools/gen-ftrace-pfe-stubs.sh | 49 ++
> samples/ftrace/ftrace-direct-modify.c | 85 ++-
> samples/ftrace/ftrace-direct-multi-modify.c | 101 ++-
> samples/ftrace/ftrace-direct-multi.c | 79 ++-
> samples/ftrace/ftrace-direct-too.c | 83 ++-
> samples/ftrace/ftrace-direct.c | 69 +-
> scripts/Makefile.vmlinux | 8 +
> scripts/link-vmlinux.sh | 11 +-
> 26 files changed, 1813 insertions(+), 189 deletions(-)
> create mode 100644 arch/powerpc/tools/Makefile
> create mode 100755 arch/powerpc/tools/gen-ftrace-pfe-stubs.sh
>
>
> base-commit: e2b06d707dd067509cdc9ceba783c06fa6a551c2
> prerequisite-patch-id: a1d50e589288239d5a8b1c1f354cd4737057c9d3
> prerequisite-patch-id: da4142d56880861bd0ad7ad7087c9e2670a2ee54
> prerequisite-patch-id: 609d292e054b2396b603890522a940fa0bdfb6d8
> prerequisite-patch-id: 6f7213fb77b1260defbf43be0e47bff9c80054cc
> prerequisite-patch-id: ad3b71bf071ae4ba1bee5b087e61a2055772a74f
> --
> 2.45.2
>
WARNING: multiple messages have this Message-ID (diff)
From: Vishal Chourasia <vishalc@linux.ibm.com>
To: Naveen N Rao <naveen@kernel.org>
Cc: Mark Rutland <mark.rutland@arm.com>,
David Vernet <dvernet@meta.com>,
John Fastabend <john.fastabend@gmail.com>,
Daniel Borkmann <daniel@iogearbox.net>,
Masahiro Yamada <masahiroy@kernel.org>,
Nicholas Piggin <npiggin@gmail.com>,
Alexei Starovoitov <ast@kernel.org>,
Steven Rostedt <rostedt@goodmis.org>,
Andrii Nakryiko <andrii@kernel.org>, Song Liu <song@kernel.org>,
Masami Hiramatsu <mhiramat@kernel.org>,
Jiri Olsa <jolsa@kernel.org>, Tejun Heo <tj@kernel.org>,
bpf@vger.kernel.org,
Christophe Leroy <christophe.leroy@csgroup.eu>,
linuxppc-dev@lists.ozlabs.org,
linux-trace-kernel@vger.kernel.org
Subject: Re: [RFC PATCH v3 00/11] powerpc: Add support for ftrace direct and BPF trampolines
Date: Mon, 24 Jun 2024 17:29:03 +0530 [thread overview]
Message-ID: <ZnlfhxvNnmM1mSVm@linux.ibm.com> (raw)
In-Reply-To: <cover.1718908016.git.naveen@kernel.org>
On Fri, Jun 21, 2024 at 12:24:03AM +0530, Naveen N Rao wrote:
> This is v3 of the patches posted here:
> http://lkml.kernel.org/r/cover.1718008093.git.naveen@kernel.org
>
> Since v2, I have addressed review comments from Steven and Masahiro
> along with a few fixes. Patches 7-11 are new in this series and add
> support for ftrace direct and bpf trampolines.
>
> This series depends on the patch series from Benjamin Gray adding
> support for patch_ulong():
> http://lkml.kernel.org/r/20240515024445.236364-1-bgray@linux.ibm.com
This patchset, along with its dependent patchset [2], enables support
for BPF schedulers introduced by the sched_ext patchset [1] on
Power Architecture.
Before this patchset, BPF schedulers were failing to load due to the
lack of trampoline support.
GitHub repo for sched_ext: https://github.com/sched-ext/sched_ext
Note: This repo has been archived. Please refer to the description
provided on the repo homepage for more details.
[1] v6 https://lore.kernel.org/lkml/20240501151312.635565-1-tj@kernel.org
[2] http://lkml.kernel.org/r/20240515024445.236364-1-bgray@linux.ibm.com
Thank you for the patch!
>
>
> - Naveen
>
>
> Naveen N Rao (11):
> powerpc/kprobes: Use ftrace to determine if a probe is at function
> entry
> powerpc/ftrace: Unify 32-bit and 64-bit ftrace entry code
> powerpc/module_64: Convert #ifdef to IS_ENABLED()
> powerpc/ftrace: Remove pointer to struct module from dyn_arch_ftrace
> kbuild: Add generic hook for architectures to use before the final
> vmlinux link
> powerpc64/ftrace: Move ftrace sequence out of line
> powerpc/ftrace: Add support for DYNAMIC_FTRACE_WITH_CALL_OPS
> powerpc/ftrace: Add support for DYNAMIC_FTRACE_WITH_DIRECT_CALLS
> samples/ftrace: Add support for ftrace direct samples on powerpc
> powerpc64/bpf: Fold bpf_jit_emit_func_call_hlp() into
> bpf_jit_emit_func_call_rel()
> powerpc64/bpf: Add support for bpf trampolines
>
> arch/Kconfig | 3 +
> arch/powerpc/Kconfig | 9 +
> arch/powerpc/Makefile | 8 +
> arch/powerpc/include/asm/ftrace.h | 29 +-
> arch/powerpc/include/asm/module.h | 5 +
> arch/powerpc/include/asm/ppc-opcode.h | 14 +
> arch/powerpc/kernel/asm-offsets.c | 11 +
> arch/powerpc/kernel/kprobes.c | 18 +-
> arch/powerpc/kernel/module_64.c | 67 +-
> arch/powerpc/kernel/trace/ftrace.c | 269 +++++++-
> arch/powerpc/kernel/trace/ftrace_64_pg.c | 73 +-
> arch/powerpc/kernel/trace/ftrace_entry.S | 210 ++++--
> arch/powerpc/kernel/vmlinux.lds.S | 3 +-
> arch/powerpc/net/bpf_jit.h | 11 +
> arch/powerpc/net/bpf_jit_comp.c | 702 +++++++++++++++++++-
> arch/powerpc/net/bpf_jit_comp32.c | 7 +-
> arch/powerpc/net/bpf_jit_comp64.c | 68 +-
> arch/powerpc/tools/Makefile | 10 +
> arch/powerpc/tools/gen-ftrace-pfe-stubs.sh | 49 ++
> samples/ftrace/ftrace-direct-modify.c | 85 ++-
> samples/ftrace/ftrace-direct-multi-modify.c | 101 ++-
> samples/ftrace/ftrace-direct-multi.c | 79 ++-
> samples/ftrace/ftrace-direct-too.c | 83 ++-
> samples/ftrace/ftrace-direct.c | 69 +-
> scripts/Makefile.vmlinux | 8 +
> scripts/link-vmlinux.sh | 11 +-
> 26 files changed, 1813 insertions(+), 189 deletions(-)
> create mode 100644 arch/powerpc/tools/Makefile
> create mode 100755 arch/powerpc/tools/gen-ftrace-pfe-stubs.sh
>
>
> base-commit: e2b06d707dd067509cdc9ceba783c06fa6a551c2
> prerequisite-patch-id: a1d50e589288239d5a8b1c1f354cd4737057c9d3
> prerequisite-patch-id: da4142d56880861bd0ad7ad7087c9e2670a2ee54
> prerequisite-patch-id: 609d292e054b2396b603890522a940fa0bdfb6d8
> prerequisite-patch-id: 6f7213fb77b1260defbf43be0e47bff9c80054cc
> prerequisite-patch-id: ad3b71bf071ae4ba1bee5b087e61a2055772a74f
> --
> 2.45.2
>
next prev parent reply other threads:[~2024-06-24 11:59 UTC|newest]
Thread overview: 54+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-06-20 18:54 [RFC PATCH v3 00/11] powerpc: Add support for ftrace direct and BPF trampolines Naveen N Rao
2024-06-20 18:54 ` Naveen N Rao
2024-06-20 18:54 ` [RFC PATCH v3 01/11] powerpc/kprobes: Use ftrace to determine if a probe is at function entry Naveen N Rao
2024-06-20 18:54 ` Naveen N Rao
2024-07-01 8:40 ` Nicholas Piggin
2024-07-01 8:40 ` Nicholas Piggin
2024-07-01 18:18 ` Naveen N Rao
2024-07-01 18:18 ` Naveen N Rao
2024-06-20 18:54 ` [RFC PATCH v3 02/11] powerpc/ftrace: Unify 32-bit and 64-bit ftrace entry code Naveen N Rao
2024-06-20 18:54 ` Naveen N Rao
2024-07-01 8:57 ` Nicholas Piggin
2024-07-01 8:57 ` Nicholas Piggin
2024-07-01 18:34 ` Naveen N Rao
2024-07-01 18:34 ` Naveen N Rao
2024-06-20 18:54 ` [RFC PATCH v3 03/11] powerpc/module_64: Convert #ifdef to IS_ENABLED() Naveen N Rao
2024-06-20 18:54 ` Naveen N Rao
2024-07-01 9:01 ` Nicholas Piggin
2024-07-01 9:01 ` Nicholas Piggin
2024-06-20 18:54 ` [RFC PATCH v3 04/11] powerpc/ftrace: Remove pointer to struct module from dyn_arch_ftrace Naveen N Rao
2024-06-20 18:54 ` Naveen N Rao
2024-07-01 9:27 ` Nicholas Piggin
2024-07-01 9:27 ` Nicholas Piggin
2024-07-01 18:51 ` Naveen N Rao
2024-07-01 18:51 ` Naveen N Rao
2024-06-20 18:54 ` [RFC PATCH v3 05/11] kbuild: Add generic hook for architectures to use before the final vmlinux link Naveen N Rao
2024-06-20 18:54 ` Naveen N Rao
2024-07-01 9:30 ` Nicholas Piggin
2024-07-01 9:30 ` Nicholas Piggin
2024-06-20 18:54 ` [RFC PATCH v3 06/11] powerpc64/ftrace: Move ftrace sequence out of line Naveen N Rao
2024-06-20 18:54 ` Naveen N Rao
2024-07-01 10:39 ` Nicholas Piggin
2024-07-01 10:39 ` Nicholas Piggin
2024-07-01 19:44 ` Naveen N Rao
2024-07-01 19:44 ` Naveen N Rao
2024-06-20 18:54 ` [RFC PATCH v3 07/11] powerpc/ftrace: Add support for DYNAMIC_FTRACE_WITH_CALL_OPS Naveen N Rao
2024-06-20 18:54 ` Naveen N Rao
2024-06-20 18:54 ` [RFC PATCH v3 08/11] powerpc/ftrace: Add support for DYNAMIC_FTRACE_WITH_DIRECT_CALLS Naveen N Rao
2024-06-20 18:54 ` Naveen N Rao
2024-06-20 18:54 ` [RFC PATCH v3 09/11] samples/ftrace: Add support for ftrace direct samples on powerpc Naveen N Rao
2024-06-20 18:54 ` Naveen N Rao
2024-06-20 19:09 ` [RFC PATCH v3 10/11] powerpc64/bpf: Fold bpf_jit_emit_func_call_hlp() into bpf_jit_emit_func_call_rel() Naveen N Rao
2024-06-20 19:09 ` Naveen N Rao
2024-06-20 19:09 ` [RFC PATCH v3 11/11] powerpc64/bpf: Add support for bpf trampolines Naveen N Rao
2024-06-20 19:09 ` Naveen N Rao
2024-07-01 11:03 ` Nicholas Piggin
2024-07-01 11:03 ` Nicholas Piggin
2024-07-01 19:58 ` Naveen N Rao
2024-07-01 19:58 ` Naveen N Rao
2024-06-24 11:59 ` Vishal Chourasia [this message]
2024-06-24 11:59 ` [RFC PATCH v3 00/11] powerpc: Add support for ftrace direct and BPF trampolines Vishal Chourasia
2024-07-03 11:11 ` Vishal Chourasia
2024-07-03 11:11 ` Vishal Chourasia
2024-07-14 7:52 ` Naveen N Rao
2024-07-14 7:52 ` Naveen N Rao
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=ZnlfhxvNnmM1mSVm@linux.ibm.com \
--to=vishalc@linux.ibm.com \
--cc=andrii@kernel.org \
--cc=ast@kernel.org \
--cc=bpf@vger.kernel.org \
--cc=christophe.leroy@csgroup.eu \
--cc=daniel@iogearbox.net \
--cc=dvernet@meta.com \
--cc=john.fastabend@gmail.com \
--cc=jolsa@kernel.org \
--cc=linux-trace-kernel@vger.kernel.org \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=mark.rutland@arm.com \
--cc=masahiroy@kernel.org \
--cc=mhiramat@kernel.org \
--cc=mpe@ellerman.id.au \
--cc=naveen@kernel.org \
--cc=npiggin@gmail.com \
--cc=rostedt@goodmis.org \
--cc=song@kernel.org \
--cc=tj@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.