From mboxrd@z Thu Jan 1 00:00:00 1970 From: Zdenek Kabelac Date: Fri, 16 Oct 2020 19:11:41 +0000 (GMT) Subject: stable-2.02 - tests: utils better handle ouf of disk space Message-ID: <20201016191141.BADD6396EC88@sourceware.org> List-Id: To: lvm-devel@redhat.com MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Gitweb: https://sourceware.org/git/?p=lvm2.git;a=commitdiff;h=3f06b5c39c47e0540db0ca26c7c0b93ad19f123c Commit: 3f06b5c39c47e0540db0ca26c7c0b93ad19f123c Parent: 276e22e263645138d315c1057c85233ad32f0c11 Author: Zdenek Kabelac AuthorDate: Fri Sep 18 14:29:15 2020 +0200 Committer: Zdenek Kabelac CommitterDate: Fri Oct 16 17:07:59 2020 +0200 tests: utils better handle ouf of disk space When the test exhausts all the available free space on storage device, then during the fail we cannot write anything as well - yet the teardown needs to finish it's work - otherwise we leave basicaly overfilled filesystem for all remaining tests. --- test/lib/utils.sh | 22 +++++++++++++--------- 1 file changed, 13 insertions(+), 9 deletions(-) diff --git a/test/lib/utils.sh b/test/lib/utils.sh index 36fbf0602..4f4bf9a21 100644 --- a/test/lib/utils.sh +++ b/test/lib/utils.sh @@ -135,18 +135,23 @@ STACKTRACE() { # Get backtraces from coredumps if which gdb &>/dev/null; then - { - echo bt full - echo l - echo quit - } > gdb_commands.txt - # Check for all cores newer then TESTNAME file # Assume users keep prefix 'core' # TODO: possibly better integrate with coredumpctl & systemd while IFS= read -r i; do bin=$(gdb -batch -c "$i" 2>&1 | grep "generated by" | \ sed -e "s,.*generated by \`\([^ ']*\).*,\1,") || continue + { + echo bt full + echo l + echo quit + } > gdb_commands.txt || rm -f gdb_commands.txt + + if test ! -s gdb_commands.txt ; then + echo "Out of disk space, can't check coredump $i generated by $bin." + continue + fi + echo "## Checking coredump: $i generated by $bin." gdb -batch -c "$i" -x gdb_commands.txt "$(which "$bin")" 2>/dev/null | \ sed -e "s,^,## GDB: ," || continue @@ -171,10 +176,9 @@ STACKTRACE() { echo "<======== Strace debug log ========>" sed -e "s,^,## STRACE: ," strace.log fi - dmsetup info -c | grep1_ "$PREFIX" > out - if test "$(wc -l < out)" -gt 1 ; then + if dmsetup info -c | grep -q "$PREFIX" ; then echo "<======== Info ========>" - sed -e "s,^,## DMINFO: ," out + dmsetup info -c | grep1_ "$PREFIX"| sed -e "s,^,## DMINFO: ," echo "<======== Active table ========>" dmsetup table | grep "$PREFIX" | sed -e "s,^,## DMTABLE: ," echo "<======== Inactive table ========>"