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