websitehot

DOOM in the kernel, or fibers in eBPF

ayles.github.io

In the maker’s words

Some time ago my coworker who was working on first version of Perforator ( https://github.com/yandex/perforator ) kept talking about eBPF, so I got curious about its ISA and restrictions. That was around the time I read about DOOM on pregnancy test, so I thought: "what if someone run DOOM inside of Linux kernel in eBPF? Surely, with some restrictions, this should still be possible?" I started to play around with it somewhere in 2024 - first stripping DOOM to bare minimum that is needed for showcase, simplifying code and trying to pass first restrictions that I encountered - function limit, recursion, memory access and checks. I tried to do this by hand, but it was, well, tedious labor. So I changed direction and instead started to do some of the things with LLVM-passes - rewriting memory access, simplifying and rewriting loops etc. But there were just so many corners. And given absence o…
ayles, launching on Hacker News

Where people found it

More sites like DOOM in the kernel, or fibers in eBPF