
The notable changes for BPF in Linux 6.18 is support for signed programs and deferred task execution . With the optional signed BPF program support it can be used for ensuring the program comes from a trusted source as part of system integrity measures. Signed BPF programs is also a step toward allowing unprivileged users to load such signed BPF programs from validated sources. The signed BPF programs has been a long time coming.
Also new with Linux 6.18 for BPF is deferred task execution to allow deferred execution in the context of a specific task using the task_work infrastructure.
The BPF verifier has also replaced path-sensitive with path-insensitive live stack analysis, support for the "may_goto" instruction to s390 and arm64 JIT, support for atomic operations in arena in RISC-V JIT, and various other changes.
More details on the merged Linux 6.18 BPF changes via the pull request .