~/talk

Segmentation fault! Low-level debugging for JS developers

Talkat CityJS Athens 2025 · 2025-05-28..05-31· [nodejs, security]
slides:none on file

Server-side crashes produce a core file that debuggers can read so you get a real stack instead of "segmentation fault": use GDB or LLDB with the executable and debug symbols, or compile a debug build of NodeJS (about half an hour) to get line numbers. V8 supplies a gdbinit and LLDB plugin with commands to print JS values and stacks. A node flag converts JS exceptions into native crashes for postmortem cores. For runtime tracing use strace -f -e trace=connect,read,write -s 124 to see DNS, IPv6 attempts and the exact HTTP bytes.

AI-written summary · about

  1. 0:00Introduction and background
  2. 1:49Understanding segmentation faults
  3. 5:19Debugging with core dumps
  4. 7:28Debug builds for deeper insight
  5. 10:42Inspecting memory and variables
  6. 12:06V8 debugging with GDB
  7. 13:30Node.js crash analysis
  8. 15:39Node.js flags for debugging
  9. 18:07Strace for system interactions
  10. 23:23Tracing network requests
  11. 25:31Summary and tools overview
~/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.