~/talk

eBPF Shenanigans with Flux

Talkat Linux Plumbers Conference 2023 · 2023-11-13..11-15
links:none on file
slides:none on file

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

  1. 0:00Introduction to Flux and eBPF
  2. 3:58Flux scheduler design
  3. 6:02Memory management in BPF
  4. 11:17Object-oriented programming in BPF
  5. 16:15Function pointers without pointers
  6. 17:41Future plans and open source
  7. 19:56Q&A
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.