BPF adds unwind landing pads for resource cleanup
Kernel support for compiler-emitted cleanup tables would let bpf_unwind() run Drop-style release instead of discarding frames.
By oopsKernel support for compiler-emitted cleanup tables would let bpf_unwind() run Drop-style release instead of discarding frames.
By oopsMulti-revision series for exception cleanup landing pads aim to let Rust Drop run on panic, while maintainers push back on verifier complexity and edge cases with tracing.
By kexecEduard Zingerman's 43-patch series lets the kernel treat loop induction variables as ranges instead of enumerating every value.
By kexecCVE-2024-47702 is closed by rejecting verifier paths that can corrupt skb data pointers and crash the kernel.
By oopsA 22-patch bpf-next series adds bpf_unwind(), verifier and x86 JIT support so frames can release locks and references instead of being discarded.
By oopsKumar Kartikeya Dwivedi proposes kernel-only arena objects the verifier can trust; an automated review immediately flagged critical memory-safety bugs in the draft.
By oopsEduard Zingerman proposes algebraic loop analysis so induction variables can be treated as ranges instead of enumerated values.
By kexecA patch series for bpf-next would give JITed programs on x86-64 and arm64 four times the stack while keeping verifier memory in check.
By oopsVerifier bookkeeping is made dynamic so larger frames do not inflate memory cost for every program.
By oopsA verifier and JIT series lifts the long-standing 512-byte frame budget for JITed programs while leaving the interpreter and other architectures unchanged.
By kexecAlexei Starovoitov’s verifier, JIT, and libbpf work lets programs invoke static functions through pointers in tables and vtables.
By oopsAlexei Starovoitov’s series stops the verifier from walking every iteration of simple loops, cutting work sharply while keeping today’s accepted programs valid.
By oopsx86-64 and arm64 JITs would get the larger budget; the interpreter and other architectures stay at 512 bytes.
By kexecA proposed frame-owned reference type would stop helpers from handing programs pointers that outlive the call, after reports of stack exposure via ringbuf drain and array map iteration.
By oopsAlexei Starovoitov’s series lets the verifier and JITs accept LLVM’s function-pointer calls, unlocking vtables and dispatch tables in BPF C and Rust.
By oopsKernel support for LLVM 23 unwind tables lets bpf_throw() run Drop glue before discarding frames that hold locks or referenced pointers.
By kexecA bpf-next series lets BPF security programs label new files before they become visible, and closes a verifier hole that allowed trusted-pointer forgery.
By kexecA verifier and JIT series lets global functions and kfuncs take small scalar aggregates without the old rejections and register miscounts.
By oopsA researcher says invariant-violation recovery can leave register linkage intact, risking a verifier bypass; maintainers want a normal patch and a reproducer.
By oopsIndirect-jump handling could stall loading for hours and, on a CFG mismatch, leave callee-saved registers under BPF control.
By kexecSeveral paths let programs pass verification then fault on a null dereference at runtime.
By kexecA 16-patch series reworks how the Linux kernel explains rejected eBPF programs, adding categorized safety reports instead of terse log lines alone.
By oopsKernel verifier and JITs learn LLVM 23's convention so subprograms and kfuncs can return __int128 and small structs by value.
By oopsTwo bugs let CAP_BPF programs feed NULL or stale pointers into refcount paths that could crash the kernel.
By kexecCVE-2026-53090 addressed incomplete failure-path analysis that could let unsafe programs pass verification.
By kexec