Michael Elizabeth Chastain’s #reverse-debugging system, mec-replay
on 02021-02-09oh nice, Michael Elizabeth Chastain showed up to tell Engblom about his #reverse-debugging system!
on 02021-02-09interesting, Jakob Engblom found Zelkowitz’s 1973 paper about #reverse-debugging
on 02021-02-09this guy cloned #rr in Rust in a few months apparently? for #reverse-debugging
on 02021-02-09#PyPy got #reverse-debugging in 02016 called "RevPDB"
on 02021-02-09#QEMU #reverse-debugging was broken 02015–02017 but should be able to boot Linux now since 02020.
on 02021-02-09claims that #QEMU #reverse-debugging does support #GDB. Somewhat.
on 02021-02-09#QEMU also supports record and replay for #reverse-debugging! At the whole-system level! On i386, amd64, ARM, and MIPS! But no GDB support! “New VM snapshots may be created in replay mode. They can be used later to recover the desired VM state. All VM states created in replay mode are associated with the moment of time in the replay scenario. After recovering the VM state replay will start from that position.”
on 02021-02-09#GDB #debugger #reverse-debugging doesn’t yet support AVX2, but recent glibc lets you turn off AVX2 with an environment variable, so you can GLIBC_TUNABLES=glibc.cpu.hwcaps=-AVX2_Usable,-AVX_Fast_Unaligned_Load gdb ...
Jakob Engblom’s “Review of #Reverse-Debugging” #paper #pdf from 02008
on 02021-02-09by default the #GDB #debugger’s record-replay backward stepping has a buffer limit of only 200000 instructions. #reverse-debugging
on 02021-02-03#rr #debugger #paper from roc et al., 02017 #toread. Reports slowdowns of 1.5× to 8× from recording different kinds of processes. #reverse-debugging
on 02021-02-03Mozilla #rr supports record-replay backward stepping on fewer platforms than the #GDB #debugger (only amd64 and then only sometimes). But it supports recording the traces to disk. Also, apparently, it requires /proc/sys/kernel/perf_event_paranoid to be no more than 1 for its fast (non -n) mode (like #perf), and doesn’t work inside Docker on the Kudu server, but does work inside KVM. #reverse-debugging
#documentation for the #GDB #debugger’s record-replay backward stepping #reverse-debugging
on 02021-02-03Mozilla #rr, which supports the #GDB #debugger, is reputed to be better than GDB’s built-in record-replay backward stepping: “more reliable”, “small performance drop”, “generated traces are small”, “supports AVX” #reverse-debugging
on 02021-02-03Bil Lewis’s Omniscient #Debugger provided record-replay backward stepping of #Java programs in NetBeans and Eclipse #reverse-debugging
on 02021-02-03