eBPF Shenanigans with Flux
summary
Flux is a framework that runs schedulers written entirely in eBPF on Google’s Ghost kernel scheduling class and it successfully composes hierarchical sub‑schedulers (per‑CPU allocation, FIFO and EDF examples) but hits verifier and memory limits. Key engineering details: array maps as quasi memory allocator with an array‑of‑one trick to grab a map outside locks, custom union‑based objects so every entry is the same size, integer “pointers,” linked lists, dense AVL trees with a max height and overflow list, switch‑macro dispatch instead of function pointers, mmap for user‑space tuning, and code in the ghost user‑space repo with plans to port to skext XT.
AI-written summary · about
