From 86bdfb3722adbfde658dfe696da791fac856c19e Mon Sep 17 00:00:00 2001 From: Zdenek Kabelac Date: Fri, 23 Mar 2012 09:41:20 +0000 Subject: [PATCH] Improve teardown_devs Try to avoid start of dmeventd during vgremove if the code has any bug inside. --- test/lib/aux.sh | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/test/lib/aux.sh b/test/lib/aux.sh index 2a535f171..a2579701d 100644 --- a/test/lib/aux.sh +++ b/test/lib/aux.sh @@ -102,11 +102,6 @@ teardown_devs_prefixed() { fi fi - if test "$stray" -eq 0; then - dmsetup table | not egrep -q "$vg|$vg1|$vg2|$vg3|$vg4" || \ - vgremove -ff $vg $vg1 $vg2 $vg3 $vg4 &>/dev/null || rm -f debug.log - fi - # Remove devices, start with closed (sorted by open count) local remfail=no local need_udev_wait=0 @@ -166,7 +161,14 @@ teardown_devs() { teardown() { echo -n "## teardown..." - test -f LOCAL_CLVMD && { + dmsetup table | not egrep -q "$vg|$vg1|$vg2|$vg3|$vg4" || { + # Avoid activation of dmeventd if there is no pid + cfg=$(test -s LOCAL_DMEVENTD || echo "--config 'activation { monitoring = 0 }'") + vgremove -ff $cfg \ + $vg $vg1 $vg2 $vg3 $vg4 &>/dev/null || rm -f debug.log + } + + test -s LOCAL_CLVMD && { kill -INT "$(cat LOCAL_CLVMD)" test -z "$LVM_VALGRIND_CLVMD" || sleep 1 sleep .1 @@ -176,8 +178,8 @@ teardown() { echo -n . pgrep dmeventd || true - test -f LOCAL_DMEVENTD && kill -9 $(cat LOCAL_DMEVENTD) || true - test -f LOCAL_LVMETAD && kill -9 $(cat LOCAL_LVMETAD) || true + test ! -s LOCAL_DMEVENTD || kill -9 "$(cat LOCAL_DMEVENTD)" || true + test ! -s LOCAL_LVMETAD || kill -9 "$(cat LOCAL_LVMETAD)" || true echo -n . -- 2.43.5