A tale about fixing eBPF spinlock issues in the Linux kernel

Linux PCs froze, devs chased a ghost bug—and commenters cheered and gasped

TLDR: A Linux PC freeze mystery led developers to fix a gnarly timing bug in the kernel’s eBPF and locks, stopping those 250ms stalls. Commenters cheered the clear write-up, marveled at “multiple kernel bugs,” and joked through the panic—equal parts applause and “how did this ship?”

A routine test of the Superluminal CPU profiler turned into a thriller when a user’s Fedora Linux machine started freezing—like, everyone-go-make-coffee freezes. The devs dove into the Linux kernel and uncovered a tangle with eBPF (tiny programs inside the kernel) and spinlocks (think: traffic guards), where a “non-maskable interrupt” — an emergency signal that can’t be ignored — was fighting over the same lock. Cue 250ms system hiccups and big drama.

Readers loved the detective story. One camp applauded the clarity and grit: “deep dives like these are very exciting,” as one fan put it. Another camp couldn’t get over the “shockingly multiple kernel bugs,” with one commenter breaking it down in plain-ish terms: two different events trying to write to the same ring buffer at the worst possible moment. Translation: kernel turf war.

And yes, the jokes rolled in. People riffed on “spinlocks” turning into “spin class,” and NMI sounding like “No More Interaction” while your PC freezes. Beyond the memes, the biggest mood was relief mixed with side-eye: praise for the write-up and fixes, but a collective “yikes” that a popular Linux setup could stall this hard. The vibe: heroic bug hunt, messy underbelly, and a community that can’t look away.

Key Points

  • Superluminal’s Linux CPU profiler triggered periodic full system freezes during captures for a tester.
  • The issue could not be reproduced in VMs but was reproducible on a physical machine running Fedora 42 with kernel 6.17.4-200.
  • Profiler timelines showed ~250+ ms intervals where all threads appeared busy with no samples collected.
  • Kernel logs (dmesg) reported the perf_event NMI handler taking roughly 250 ms, matching capture gaps.
  • The team investigated Linux kernel internals, focusing on eBPF spinlocks, and contributed fixes (details not in the excerpt).

Hottest takes

the shockingly multiple kernel bugs — sidkshatriya
This leads to lock contention and recursive locks etc — sidkshatriya
deep dives like these are very exciting reading — legedemon
Made with <3 by @siedrix and @shesho from CDMX. Powered by Forge&Hive.