From 546f65ffdb4c87724441d36d47215876f0ae5ed9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ond=C5=99ej=20Sur=C3=BD?= Date: Mon, 18 Nov 2019 23:17:37 +0800 Subject: [PATCH] Dump the backtrace to stdout when core is found in systest directory (cherry picked from commit 512dadc8d10151530ca94b10e8fb9ee7170a036f) --- bin/tests/system/run.gdb | 1 + bin/tests/system/run.sh | 12 ++++++++++++ util/copyrights | 1 + 3 files changed, 14 insertions(+) create mode 100644 bin/tests/system/run.gdb diff --git a/bin/tests/system/run.gdb b/bin/tests/system/run.gdb new file mode 100644 index 0000000000..60981e1e9b --- /dev/null +++ b/bin/tests/system/run.gdb @@ -0,0 +1 @@ +thread apply all bt full diff --git a/bin/tests/system/run.sh b/bin/tests/system/run.sh index 4d8f53b198..90dbd9a9df 100755 --- a/bin/tests/system/run.sh +++ b/bin/tests/system/run.sh @@ -200,6 +200,18 @@ else echoinfo "I:$systest:Test claims success despite crashes: $core_dumps" echofail "R:$systest:FAIL" # Do not clean up - we need the evidence. + find "$systest/" -name 'core*' | while read -r coredump; do + SYSTESTDIR="$systest" + echoinfo "D:$systest:backtrace from $coredump start" + binary="`gdb --batch --core="$coredump" | sed -ne "s/Core was generated by .//;s/ .*'.$//p;"`" + "$TOP/libtool" --mode=execute gdb \ + --batch \ + --command=run.gdb \ + --core="$coredump" \ + -- \ + "$binary" + echoinfo "D:$systest:backtrace from $coredump end" + done elif [ $assertion_failures -ne 0 ]; then echoinfo "I:$systest:Test claims success despite $assertion_failures assertion failure(s)" echofail "R:$systest:FAIL" diff --git a/util/copyrights b/util/copyrights index 3ce2a29714..1d103cd1a7 100644 --- a/util/copyrights +++ b/util/copyrights @@ -2193,6 +2193,7 @@ ./bin/tests/system/rsabigexponent/prereq.sh SH 2012,2014,2016,2018,2019,2020 ./bin/tests/system/rsabigexponent/setup.sh SH 2012,2014,2016,2018,2019,2020 ./bin/tests/system/rsabigexponent/tests.sh SH 2012,2016,2018,2019,2020 +./bin/tests/system/run.gdb X 2019,2020 ./bin/tests/system/run.sh SH 2000,2001,2004,2007,2010,2012,2014,2015,2016,2017,2018,2019,2020 ./bin/tests/system/runall.sh SH 2000,2001,2004,2007,2010,2011,2012,2014,2015,2016,2018,2019,2020 ./bin/tests/system/runsequential.sh SH 2018,2019,2020