From 9fdc4956027b4e1617a834424745af41cd85dc70 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Wed, 21 Jun 2017 16:08:29 +0100 Subject: [PATCH] appliance/init: Allow daemon stack traces to be captured by gdb. This fragment, not enabled by default, allows stack traces to be captured and displayed by gdb in case the daemon crashes. --- appliance/init | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/appliance/init b/appliance/init index 50a1dc3bd..44230d6f6 100755 --- a/appliance/init +++ b/appliance/init @@ -171,6 +171,19 @@ fi if test "$guestfs_network" = 1; then cmd="$cmd --network" fi +if false; then + # To get a stack trace if the daemon crashes: + # (1) change this section to 'if true' + # (2) add 'gdb' to 'appliance/packagelist.in' + unset LD_PRELOAD + echo set pagination off > /tmp/gdb-script + echo run >> /tmp/gdb-script + echo info registers >> /tmp/gdb-script + echo 'x/16i $pc' >> /tmp/gdb-script + echo t a a bt >> /tmp/gdb-script + echo quit >> /tmp/gdb-script + cmd="gdb -batch -x /tmp/gdb-script --args $cmd" +fi if ! test "$guestfs_rescue" = 1; then echo $cmd $cmd