aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--contrib/debugger/README13
-rw-r--r--contrib/debugger/crashreport.gdb16
2 files changed, 29 insertions, 0 deletions
diff --git a/contrib/debugger/README b/contrib/debugger/README
new file mode 100644
index 00000000000..827607d6ec9
--- /dev/null
+++ b/contrib/debugger/README
@@ -0,0 +1,13 @@
+The included crashreport.gdb allows for semiautomated hunting of
+crashes. The crashlog-file will be named backtrace.log and contains all
+the commands required to partially automate a crashlog-creation with the
+proper information.
+
+Usage: gdb -x crashreport.gdb <executable file>
+
+For creating an efficient backtrace, use -DCMAKE_BUILD_TYPE=Debug as a
+parameter to CMake during configuration - this increases the filesize,
+but includes all the needed information for a decent and efficient
+crashreport.
+
+-- Good luck, and happy crashhunting.
diff --git a/contrib/debugger/crashreport.gdb b/contrib/debugger/crashreport.gdb
new file mode 100644
index 00000000000..ec3ffb3e9ab
--- /dev/null
+++ b/contrib/debugger/crashreport.gdb
@@ -0,0 +1,16 @@
+set logging overwrite on
+set logging file backtrace.log
+handle SIG33 pass nostop noprint
+set pagination 0
+run
+set logging on
+echo \n--- DEBUG: BACKTRACE FULL\n\n
+backtrace full
+echo \n--- DEBUG: INFO REGISTERS\n\n
+info registers
+echo \n--- DEBUG: CALLS (x/32i $pc)\n\n
+x/32i $pc
+echo \n--- DEBUG: THREAD APPLY ALL BACKTRACE\n
+thread apply all backtrace
+set logging off
+quit