bpf.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [RFC bpf-next v2 0/4] bpf: Fast-Path approach for BPF program
@ 2025-06-14  6:40 Siddharth Chintamaneni
  2025-06-14  6:40 ` [RFC bpf-next v2 1/4] bpf: Introduce new structs and struct fields Siddharth Chintamaneni
                   ` (4 more replies)
  0 siblings, 5 replies; 19+ messages in thread
From: Siddharth Chintamaneni @ 2025-06-14  6:40 UTC (permalink / raw)
  To: bpf
  Cc: ast, daniel, andrii, martin.lau, eddyz87, song, yonghong.song,
	john.fastabend, kpsingh, sdf, haoluo, jolsa, djwillia, miloc,
	ericts, rahult, doniaghazy, quanzhif, jinghao7, sidchintamaneni,
	memxor, egor, sairoop10

This is RFC v2 of 
	https://lore.kernel.org/bpf/20250420105524.2115690-1-rjsu26@gmail.com/

Change since v1:
- Patch generation has been moved after verification and before JIT.
	- Now patch generation handles both helpers and kfuncs.
	- Sanity check on original prog and patch prog after JIT.
- Runtime termination handler is now global termination mechanism using
  text_poke.
- Termination is triggered by watchdog timer.

TODO:
- Termination support for tailcall programs.
- Fix issue caused by warning in runtime termination handler due to 
  https://elixir.bootlin.com/linux/v6.15.1/source/kernel/smp.c#L815
- Free memory for patch progs related fields.
- Include selftests covering more cases such as BPF program nesting.

 include/linux/bpf.h                           |  19 +-
 include/linux/bpf_verifier.h                  |   4 +
 include/linux/filter.h                        |  43 ++-
 kernel/bpf/core.c                             |  64 +++++
 kernel/bpf/syscall.c                          | 225 ++++++++++++++++
 kernel/bpf/trampoline.c                       |   5 +
 kernel/bpf/verifier.c                         | 245 +++++++++++++++++-
 .../bpf/prog_tests/bpf_termination.c          |  39 +++
 .../selftests/bpf/progs/bpf_termination.c     |  38 +++
 9 files changed, 674 insertions(+), 8 deletions(-)
 create mode 100644 tools/testing/selftests/bpf/prog_tests/bpf_termination.c
 create mode 100644 tools/testing/selftests/bpf/progs/bpf_termination.c

-- 
2.43.0


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

end of thread, other threads:[~2025-07-10  0:54 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-06-14  6:40 [RFC bpf-next v2 0/4] bpf: Fast-Path approach for BPF program Siddharth Chintamaneni
2025-06-14  6:40 ` [RFC bpf-next v2 1/4] bpf: Introduce new structs and struct fields Siddharth Chintamaneni
2025-06-14  6:40 ` [RFC bpf-next v2 2/4] bpf: Generating a stubbed version of BPF program for termination Siddharth Chintamaneni
2025-06-30 12:47   ` Kumar Kartikeya Dwivedi
2025-07-04 17:32     ` Raj Sahu
2025-07-04 18:37       ` Kumar Kartikeya Dwivedi
2025-06-14  6:40 ` [RFC bpf-next v2 3/4] bpf: Runtime part of fast-path termination approach Siddharth Chintamaneni
2025-06-30 12:15   ` Kumar Kartikeya Dwivedi
2025-07-04 17:29     ` Raj Sahu
2025-07-04 19:10       ` Kumar Kartikeya Dwivedi
2025-07-07 17:40         ` Alexei Starovoitov
2025-07-07 19:16           ` Kumar Kartikeya Dwivedi
2025-07-07 20:09             ` Alexei Starovoitov
2025-07-07 22:08             ` Zvi Effron
2025-07-07 22:39               ` Kumar Kartikeya Dwivedi
2025-07-08  7:07           ` Raj Sahu
2025-07-10  0:54             ` Kumar Kartikeya Dwivedi
2025-06-14  6:40 ` [RFC bpf-next v2 4/4] selftests/bpf: Adds selftests to check termination of long running nested bpf loops Siddharth Chintamaneni
2025-06-30 13:03 ` [RFC bpf-next v2 0/4] bpf: Fast-Path approach for BPF program Kumar Kartikeya Dwivedi

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).