bpf.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [RFC PATCH bpf-next 0/4] Support bpf trampoline for RV64
@ 2022-12-19 13:37 Pu Lehui
  2022-12-19 13:37 ` [RFC PATCH bpf-next 1/4] bpf: Rollback to text_poke when arch not supported ftrace direct call Pu Lehui
                   ` (4 more replies)
  0 siblings, 5 replies; 10+ messages in thread
From: Pu Lehui @ 2022-12-19 13:37 UTC (permalink / raw)
  To: bpf, linux-riscv, linux-kernel
  Cc: Björn Töpel, Alexei Starovoitov, Daniel Borkmann,
	Andrii Nakryiko, Martin KaFai Lau, Song Liu, Yonghong Song,
	John Fastabend, KP Singh, Stanislav Fomichev, Hao Luo, Jiri Olsa,
	Paul Walmsley, Palmer Dabbelt, Albert Ou, Pu Lehui, Pu Lehui

BPF trampoline is the critical infrastructure of the bpf
subsystem, acting as a mediator between kernel functions
and BPF programs. Numerous important features, such as
using ebpf program for zero overhead kernel introspection,
rely on this key component. We can't wait to support bpf
trampoline on RV64. The implementation of bpf trampoline
was closely to x86 and arm64 for future development.

As most of riscv cpu support unaligned memory accesses,
we temporarily use patch [1] to facilitate testing. The
test results are as follow, and test_verifier with no
new failure ceses.

- fexit_test:OK
- fentry_test:OK
- fentry_fexit:OK
- fexit_stress:OK
- fexit_bpf2bpf:OK
- dummy_st_ops:OK
- modify_return:OK
- get_func_ip_test:OK
- get_func_args_test:OK
- trampoline_count:OK

[1] https://lore.kernel.org/linux-riscv/20210916130855.4054926-2-chenhuang5@huawei.com/

Pu Lehui (4):
  bpf: Rollback to text_poke when arch not supported ftrace direct call
  riscv, bpf: Factor out emit_call for kernel and bpf context
  riscv, bpf: Add bpf_arch_text_poke support for RV64
  riscv, bpf: Add bpf trampoline support for RV64

 arch/riscv/net/bpf_jit.h        |   5 +
 arch/riscv/net/bpf_jit_comp64.c | 484 ++++++++++++++++++++++++++++++--
 kernel/bpf/trampoline.c         |   8 +-
 3 files changed, 472 insertions(+), 25 deletions(-)

-- 
2.25.1


^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2023-01-03  8:40 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-12-19 13:37 [RFC PATCH bpf-next 0/4] Support bpf trampoline for RV64 Pu Lehui
2022-12-19 13:37 ` [RFC PATCH bpf-next 1/4] bpf: Rollback to text_poke when arch not supported ftrace direct call Pu Lehui
2022-12-19 13:37 ` [RFC PATCH bpf-next 2/4] riscv, bpf: Factor out emit_call for kernel and bpf context Pu Lehui
2022-12-19 13:37 ` [RFC PATCH bpf-next 3/4] riscv, bpf: Add bpf_arch_text_poke support for RV64 Pu Lehui
2023-01-03  7:37   ` Björn Töpel
2023-01-03  8:01     ` Pu Lehui
2023-01-03  8:21       ` Björn Töpel
2023-01-03  8:39         ` Pu Lehui
2022-12-19 13:37 ` [RFC PATCH bpf-next 4/4] riscv, bpf: Add bpf trampoline " Pu Lehui
2022-12-20  2:16 ` [RFC PATCH bpf-next 0/4] Support bpf trampoline " Pu Lehui

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).