S02 E14
16 May 2022/01:30:24

Debugging Methodologies


Oxide and Friends Twitter Space: May 16th, 2022

Debugging Methodologies
We've been holding a Twitter Space weekly on Mondays at 5p for about an hour. Even though it's not (yet?) a feature of Twitter Spaces, we have been recording them all; here is the recording for our Twitter Space for May 16th, 2022.

In addition to Bryan Cantrill and Adam Leventhal, our special guests on May 16th were Jordan Hendricks and Luqman Aden. Other speakers included jasonbking, Rick Altherr and Ben Kimock. (Did we miss your name and/or get it wrong? Drop a PR!)

Some of the topics we hit on, in the order that we hit them:
  • Green Room wiki
  • NVMe wiki (Non-Volatile Memory. PCI Express)
  • @3:38 Jordan's story
    • Jordan's thorough bug write-up, (reported by Josh Clulow as "nvme_quiesce() can hang preventing reboot")
    • Non-maskable interrupt wiki
    • @8:04 Adam interrupts a box with a kitchen knife
    • kmdb man page and page in the mdb book
    • @14:11 Josh recites a poem about timeouts
    • Avoiding getting stuck, experimenting
    • @20:10 A previous encounter with NVMe/PCIe issues (see also: Jordan's NVMe Hotplug discussion video ~26mins)
    • mdb format character "j" (for Jordan!) (and jazzed-up) feature
    • @26:50 Normal and abrupt shutdown notification, breakthrough, writing up a narrative
  • @32:27 Luqman's story
    • The blog post "Achievement Unlocked: rustc segfault"
    • dtrace usdt
    • cscope, rust analyzer
  • @43:50 Inspecting LLVM IR, RustC MIR
    • async blocks, inline assembly
    • boiling down reproducible cases
    • making quality write-ups, telling a story, teaching debugging
    • popular on Hacker News
    • dead reproducible?
  • @1:03:02 Bugs: psychotic, non reproducible
    • Debugging mindset
    • Different tools and methodologies for different problems
    • anonymous tracing book page, speculative tracing page
  • @1:10:03 Jason: number literal formats with underscores, now in mdb
  • @1:12:35 Ben prompts a debugging story, checking conditions in debug, program abort on error
    • ud2 instruction
    • Rick describes the Oxide boot loader
    • XMODEM wiki
    • Triple fault wiki
    • Rust "heapless" crate
If we got something wrong or missed something, please file a PR! Our next Twitter space will likely be on Monday at 5p Pacific Time; stay tuned to our Twitter feeds for details. We'd love to have you join us, as we always love to hear from new speakers!