Programmable debuggers and the Linux kernel (drg...
summary
drgn exposes kernel types as Python objects backed by a C core, reads vmlinux and kcore (with parallel DWARF loading), and already provides helpers for slab caches, linked‑list iteration and pluggable unwinders including ORC. an alternative approach wires poke’s domain‑specific pickles into GDB so a new code command and libpoke let GDB read/write inferiors and decode ELF TCP USB payloads inline. tradeoffs: drgn favors fast dump analysis and kernel‑aware helpers; GDB+poke leverages existing debugger UX and pickles for rich payload parsing.
AI-written summary · about
chapters (8)
- 0:00Introduction to Dragon
- 5:20Dragon overview and features
- 10:49Replacing Dragon with GDB and Poke
- 16:29Discussion on kernel debugging needs
- 25:46Use cases for programmable debuggers
- 32:00Performance and use case trade-offs
- 34:27Dump vs live debugging
- 38:06Q&A and closing
related talks
01h 29mModern Linux C++ Debugging Tools - Under the Covers
58m“Debugging Linux C++”
01h 29mMore GDB wizardry and 8 other essential Linux application debugging tools
18mFavourite GDB developers tricks
51mDebugging Go programs with Delve
52mLinux Kernel Debugging: Going Beyond Printk Messages
40mMulticore Debugging with GDB
32mCross Debugging on Linux : A History, Current State of the Art and Coming Improvements
