GCC BPF and Linux kernel
summary
Status update on GCC BPF support: GCC already compiled all kernel selftests last year and aims to become the primary BPF compiler; BPF declaration/type attributes are upstream and a new kernel verifier in GCC test suite is being added before GCC 16 to catch regressions. SMTGCC was ported and SMTGCC found backend bugs. Outstanding items include assembler mgoto, verification PRs, kernel selftests and elfutils fixes, a generated-call pattern that needs either linking or a new instruction, ABI/linking worries, Rust front end work, and a persistent staffing and attention span shortage.
AI-written summary · about
chapters (11)
- 0:00Introduction and status update
- 1:06Kernel session updates
- 3:11BPF declaration and type tax
- 4:58GCC test suite with kernel verifier
- 7:08Current challenges and PRs
- 11:28Staffing and BPF development speed
- 16:30BPF features and GCC parity
- 18:15Kernel headers and compatibility
- 20:07Sleep calls in BPF generation
- 22:19Linking and ABI considerations
- 24:06Rust and SBPF variants
related talks
24mCompiling for verified targets BPF
45mSupporting BPF in the GNU Toolchain
15mTowards a standardized eBPF ISA - Conformance testing
24mGenerating BPF Verifier Friendly Code with Clang
43mLiving with and Leveraging GCC
19mClangBuiltLinux: What's Next?
43mToolchains for the Future
44mCompiling the Linux Kernel with gccrs
