When BPF programs need to die: exploring the design space for early BPF...
summary
Proposal offers a fast-path termination that dynamically patches running BPF bytecode to force helper calls to fail except those that free resources, relying on the verifier’s range analysis and branch traversal to guarantee zero-bookkeeping safe cleanup. A simple nested-loop example runs ~2 minutes and the authors claim it can grow to hours; long-running helpers like bpf_loop and iterators are targeted. Limits: kernel-side long stalls (find_vma) can’t be preempted, some helpers lack error paths, and per-CPU text + synchronized patching are required.
AI-written summary · about
chapters (5)
- 0:00Introduction to BPF termination
- 3:51Challenges in killing BPF programs
- 10:46Implicit lifetime management approach
- 21:42Summary and limitations
- 22:27Q&A session
related talks
34mWhat's new in the BPF world?
43mHotBPF++: A More Powerful Memory Protection for the Linux Kernel
28mDeveloping Modern eBPF Applications
47mBPF: The Status of BTF, producers, consumers.
36mThe journey of BPF from restricted C language towards extended and safe C.
21mPerformance Wins with BPF: Getting Started
36mObservability and performance analysis with BPF
27mHotBPF - An On-demand and On-the-fly Memory Protection for the Linux Ker...
