1
0
mirror of git://sourceware.org/git/lvm2.git synced 2025-01-02 01:18:26 +03:00

testsuite: get stacktrace if test drops core

Requires lvm be built with debugging (-g).
Also requires 'ulimit -c' be non-zero (to drop core file).
This commit is contained in:
Mike Snitzer 2010-03-17 14:55:28 +00:00
parent 917c57e77b
commit d0af5def87
2 changed files with 16 additions and 0 deletions

View File

@ -1,5 +1,6 @@
Version 2.02.63 -
================================
Get stacktrace if testsuite test drops core and lvm was built with debugging.
Disable long living process flag in lvm2app.
Fix pvcreate device md filter check.
Suppress repeated errors about the same missing PV uuids.

View File

@ -24,6 +24,21 @@ STACKTRACE() {
echo "$i ${FUNC}() called from ${BASH_SOURCE[$i]}:${BASH_LINENO[$i]}"
i=$(($i + 1));
done
# Attempt to get a stacktrace if a core file exists
# and the lvm binary was built with debugging
TEST_LVM_BINARY=$(dirname $(which lvm))/../../tools/lvm
TEST_LVM_CORE=`ls core* | head -1`
GDB_BINARY=`which gdb`
READELF_BINARY=`which readelf`
if [ -n "$TEST_LVM_CORE" -a -n "$GDB_BINARY" -a -n "$READELF_BINARY" ]; then
if $READELF_BINARY -S $TEST_LVM_BINARY 2>&1 | grep -q .debug_info; then
echo bt full > gdb_commands.txt
echo l >> gdb_commands.txt
echo quit >> gdb_commands.txt
$GDB_BINARY -batch -c $TEST_LVM_CORE -x gdb_commands.txt $TEST_LVM_BINARY
fi
fi
}
init_udev_transaction() {