master - clvmd: fix the len setting in last commit
by Zdenek Kabelac
Gitweb: http://git.fedorahosted.org/git/?p=lvm2.git;a=commitdiff;h=6c892be4a50049...
Commit: 6c892be4a50049adbaa99c2a8c031a4acb6410f5
Parent: 5dc9402774efb99ffea95d7f5435f36d68aa5077
Author: Zdenek Kabelac <zkabelac(a)redhat.com>
AuthorDate: Mon Mar 10 12:35:44 2014 +0100
Committer: Zdenek Kabelac <zkabelac(a)redhat.com>
CommitterDate: Mon Mar 10 12:35:44 2014 +0100
clvmd: fix the len setting in last commit
When theoretically sending 0 length buffer, ensure 0 is returned.
---
daemons/clvmd/clvmd.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/daemons/clvmd/clvmd.c b/daemons/clvmd/clvmd.c
index 1fc3694..ddebc15 100644
--- a/daemons/clvmd/clvmd.c
+++ b/daemons/clvmd/clvmd.c
@@ -2002,7 +2002,7 @@ static void send_version_message(void)
static int send_message(void *buf, int msglen, const char *csid, int fd,
const char *errtext)
{
- int len;
+ int len = 0;
int ptr;
struct timespec delay;
struct timespec remtime;
10 years, 2 months
master - tests: dmeventd valgrind testing
by Zdenek Kabelac
Gitweb: http://git.fedorahosted.org/git/?p=lvm2.git;a=commitdiff;h=5dc9402774efb9...
Commit: 5dc9402774efb99ffea95d7f5435f36d68aa5077
Parent: c7262d5b383091e874d5a00ac266819b5eda649b
Author: Zdenek Kabelac <zkabelac(a)redhat.com>
AuthorDate: Sat Mar 8 23:19:26 2014 +0100
Committer: Zdenek Kabelac <zkabelac(a)redhat.com>
CommitterDate: Mon Mar 10 12:24:11 2014 +0100
tests: dmeventd valgrind testing
---
test/lib/aux.sh | 10 ++++++----
1 files changed, 6 insertions(+), 4 deletions(-)
diff --git a/test/lib/aux.sh b/test/lib/aux.sh
index 4b4662c..53d0fc7 100644
--- a/test/lib/aux.sh
+++ b/test/lib/aux.sh
@@ -62,11 +62,14 @@ prepare_dmeventd() {
lvmconf "activation/monitoring = 1"
- dmeventd -f "$@" &
+ local run_valgrind=
+ test "${LVM_VALGRIND_DMEVENTD:-0}" -eq 0 || run_valgrind="run_valgrind"
+ $run_valgrind dmeventd -f "$@" &
echo $! > LOCAL_DMEVENTD
# FIXME wait for pipe in /var/run instead
- sleep .3
+ while ! test -e "/var/run/dmeventd.pid"; do echo -n .; sleep .2; done # wait for the socket
+ echo ok
}
prepare_lvmetad() {
@@ -217,8 +220,7 @@ teardown() {
echo -n .
- pgrep dmeventd || true
- test ! -s LOCAL_DMEVENTD || kill -9 "$(cat LOCAL_DMEVENTD)" || true
+ kill_sleep_kill_ LOCAL_DMEVENTD ${LVM_VALGRIND_DMEVENTD:-0}
echo -n .
10 years, 2 months
master - tests: aux adds kill_sleep_kill_
by Zdenek Kabelac
Gitweb: http://git.fedorahosted.org/git/?p=lvm2.git;a=commitdiff;h=c7262d5b383091...
Commit: c7262d5b383091e874d5a00ac266819b5eda649b
Parent: 1c18fc42ecd2f33794fd552f1539d76867420cf5
Author: Zdenek Kabelac <zkabelac(a)redhat.com>
AuthorDate: Sun Mar 9 22:55:11 2014 +0100
Committer: Zdenek Kabelac <zkabelac(a)redhat.com>
CommitterDate: Mon Mar 10 12:24:11 2014 +0100
tests: aux adds kill_sleep_kill_
Move common code to subfunction
---
test/lib/aux.sh | 21 ++++++++++++---------
1 files changed, 12 insertions(+), 9 deletions(-)
diff --git a/test/lib/aux.sh b/test/lib/aux.sh
index 2cb3dc9..4b4662c 100644
--- a/test/lib/aux.sh
+++ b/test/lib/aux.sh
@@ -192,11 +192,19 @@ teardown_devs() {
}
}
+kill_sleep_kill_() {
+ if test -s "$1" ; then
+ if kill -TERM "$(cat $1)" ; then
+ if test "$2" -eq 0 ; then sleep .1 ; else sleep 1 ; fi
+ kill -KILL "$(cat $1)" 2>/dev/null || true
+ fi
+ fi
+}
+
teardown() {
echo -n "## teardown..."
- test ! -s LOCAL_LVMETAD || \
- (kill -TERM "$(cat LOCAL_LVMETAD)" && sleep 1 &&
- kill -KILL "$(cat LOCAL_LVMETAD)" 2> /dev/null) || true
+
+ kill_sleep_kill_ LOCAL_LVMETAD ${LVM_VALGRIND_LVMETAD:-0}
dm_table | not egrep -q "$vg|$vg1|$vg2|$vg3|$vg4" || {
# Avoid activation of dmeventd if there is no pid
@@ -205,12 +213,7 @@ teardown() {
$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
- kill -9 "$(cat LOCAL_CLVMD)" &>/dev/null || true
- }
+ kill_sleep_kill_ LOCAL_CLVMD ${LVM_VALGRIND_CLVMD:-0}
echo -n .
10 years, 2 months
master - tests: drop unused make_ioerror
by Zdenek Kabelac
Gitweb: http://git.fedorahosted.org/git/?p=lvm2.git;a=commitdiff;h=1c18fc42ecd2f3...
Commit: 1c18fc42ecd2f33794fd552f1539d76867420cf5
Parent: 6cc75d149710aa0ffbdfe58e4abc92572cbed07a
Author: Zdenek Kabelac <zkabelac(a)redhat.com>
AuthorDate: Sun Mar 9 22:54:24 2014 +0100
Committer: Zdenek Kabelac <zkabelac(a)redhat.com>
CommitterDate: Mon Mar 10 12:24:11 2014 +0100
tests: drop unused make_ioerror
---
test/lib/aux.sh | 5 -----
1 files changed, 0 insertions(+), 5 deletions(-)
diff --git a/test/lib/aux.sh b/test/lib/aux.sh
index 1426390..2cb3dc9 100644
--- a/test/lib/aux.sh
+++ b/test/lib/aux.sh
@@ -233,11 +233,6 @@ teardown() {
test ${LVM_TEST_PARALLEL:-0} -eq 1 -o -n "$RUNNING_DMEVENTD" || not pgrep dmeventd #&>/dev/null
}
-make_ioerror() {
- echo 0 10000000 error | dmsetup create -u ${PREFIX}-ioerror ioerror
- ln -s "$DM_DEV_DIR/mapper/ioerror" "$DM_DEV_DIR/ioerror"
-}
-
prepare_loop() {
local size=${1=32}
local i
10 years, 2 months
master - tests: workaround bash bug
by Zdenek Kabelac
Gitweb: http://git.fedorahosted.org/git/?p=lvm2.git;a=commitdiff;h=6cc75d149710aa...
Commit: 6cc75d149710aa0ffbdfe58e4abc92572cbed07a
Parent: 4eed2c8142dc50e1d359881027aa38a4e4ef2149
Author: Zdenek Kabelac <zkabelac(a)redhat.com>
AuthorDate: Sat Mar 8 23:07:50 2014 +0100
Committer: Zdenek Kabelac <zkabelac(a)redhat.com>
CommitterDate: Mon Mar 10 12:24:10 2014 +0100
tests: workaround bash bug
Seems new bash4.3 is somewhat buggy
https://bugzilla.redhat.com/show_bug.cgi?id=1074202
Put in cheap workaround for now.
---
test/lib/check.sh | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/test/lib/check.sh b/test/lib/check.sh
index 9c55338..20ad6c3 100644
--- a/test/lib/check.sh
+++ b/test/lib/check.sh
@@ -60,13 +60,13 @@ lv_err_list_() {
}
lv_on_diff_() {
- declare -a devs=("${!1}") # pass in shell array
+ declare -a xdevs=("${!1}") # pass in shell array
local expect=( "${@:4}" ) # make an array starting from 4th args...
local diff_e
# Find diff between 2 shell arrays, print them as stdin files
printf "%s\n" "${expect[@]}" | sort | uniq >_lv_on_diff1
- printf "%s\n" "${devs[@]}" >_lv_on_diff2
+ printf "%s\n" "${xdevs[@]}" >_lv_on_diff2
diff_e=$(diff _lv_on_diff1 _lv_on_diff2) ||
die "LV $2/$3 $(lv_err_list_ "^>" "${diff_e}" found)$(lv_err_list_ "^<" "${diff_e}" "not found")."
}
10 years, 2 months
master - tests: skip valgrind testing when assigned to 0
by Zdenek Kabelac
Gitweb: http://git.fedorahosted.org/git/?p=lvm2.git;a=commitdiff;h=4eed2c8142dc50...
Commit: 4eed2c8142dc50e1d359881027aa38a4e4ef2149
Parent: 41e1b12e036ef2079586c4c567eae060c2635062
Author: Zdenek Kabelac <zkabelac(a)redhat.com>
AuthorDate: Sat Mar 8 22:53:23 2014 +0100
Committer: Zdenek Kabelac <zkabelac(a)redhat.com>
CommitterDate: Mon Mar 10 12:24:10 2014 +0100
tests: skip valgrind testing when assigned to 0
When LVM_VALGRIND_CLVMD/LVMETAD is set to 0 skip testing.
(Proviosly any value caused to run valgrind testing,
so now '0' skips testing))
---
test/lib/aux.sh | 6 +++---
1 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/test/lib/aux.sh b/test/lib/aux.sh
index b2d73a6..1426390 100644
--- a/test/lib/aux.sh
+++ b/test/lib/aux.sh
@@ -39,12 +39,12 @@ prepare_clvmd() {
# lvmconf "activation/monitoring = 1"
local run_valgrind=
- test -z "$LVM_VALGRIND_CLVMD" || run_valgrind="run_valgrind"
+ test "${LVM_VALGRIND_CLVMD:-0}" -eq 0 || run_valgrind="run_valgrind"
$run_valgrind lib/clvmd -Isinglenode -d 1 -f &
local local_clvmd=$!
sleep .3
# extra sleep for slow valgrind
- test -z "$LVM_VALGRIND_CLVMD" || sleep 7
+ test -z "$run_valgrind" || sleep 7
# check that it is really running now
ps $local_clvmd || die
echo $local_clvmd > LOCAL_CLVMD
@@ -77,7 +77,7 @@ prepare_lvmetad() {
lvmconf "devices/md_component_detection = 0"
local run_valgrind=
- test -z "$LVM_VALGRIND_LVMETAD" || run_valgrind="run_valgrind"
+ test "${LVM_VALGRIND_LVMETAD:-0}" -eq 0 || run_valgrind="run_valgrind"
echo "preparing lvmetad..."
$run_valgrind lvmetad -f "$@" -s "$TESTDIR/lvmetad.socket" -l wire,debug &
10 years, 2 months
master - tests: skip another kernel
by Zdenek Kabelac
Gitweb: http://git.fedorahosted.org/git/?p=lvm2.git;a=commitdiff;h=41e1b12e036ef2...
Commit: 41e1b12e036ef2079586c4c567eae060c2635062
Parent: d913fcbd4616279829fd495e6384b661b897c6df
Author: Zdenek Kabelac <zkabelac(a)redhat.com>
AuthorDate: Sat Mar 8 22:38:06 2014 +0100
Committer: Zdenek Kabelac <zkabelac(a)redhat.com>
CommitterDate: Mon Mar 10 12:24:10 2014 +0100
tests: skip another kernel
This kernel has still buggy kmem_cache debugging so skip it for raid456.
---
test/lib/aux.sh | 6 ++++++
test/shell/lvchange-raid456.sh | 1 +
2 files changed, 7 insertions(+), 0 deletions(-)
diff --git a/test/lib/aux.sh b/test/lib/aux.sh
index 5d2d188..b2d73a6 100644
--- a/test/lib/aux.sh
+++ b/test/lib/aux.sh
@@ -671,8 +671,14 @@ raid456_replace_works() {
# old instance to be preserved and causes a colision (and thus failure) in
# kmem_cache_create(). I see this regularly in testing the following
# kernels:
+#
+# This seems to be finaly resolved with this patch:
+# http://www.redhat.com/archives/dm-devel/2014-March/msg00008.html
+# so we need to put here exlusion for kernes which do trace SLUB
+#
case $(uname -r) in
3.10.11-200.fc19.i686|3.10.11-200.fc19.x86_64) return 1 ;;
+ 3.13.5-101.fc19.i686.PAE) return 1 ;;
esac
}
diff --git a/test/shell/lvchange-raid456.sh b/test/shell/lvchange-raid456.sh
index 41a0dfd..83f82c3 100644
--- a/test/shell/lvchange-raid456.sh
+++ b/test/shell/lvchange-raid456.sh
@@ -13,6 +13,7 @@ TEST_RAID=raid456
. shell/lvchange-raid.sh
+aux raid456_replace_works || skip
aux target_at_least dm-raid 1 5 2 || skip
run_types raid4 -i 2 "$dev1" "$dev2" "$dev3" "$dev4"
10 years, 2 months
master - tests: improve wait for open
by Zdenek Kabelac
Gitweb: http://git.fedorahosted.org/git/?p=lvm2.git;a=commitdiff;h=d913fcbd461627...
Commit: d913fcbd4616279829fd495e6384b661b897c6df
Parent: fa23234e71ce8c5270e5b45bb55556d563383dfc
Author: Zdenek Kabelac <zkabelac(a)redhat.com>
AuthorDate: Fri Mar 7 19:26:37 2014 +0100
Committer: Zdenek Kabelac <zkabelac(a)redhat.com>
CommitterDate: Mon Mar 10 12:24:10 2014 +0100
tests: improve wait for open
Add loop to detect open device from 'sleep <'
---
test/shell/snapshot-usage.sh | 16 +++++++++++++---
1 files changed, 13 insertions(+), 3 deletions(-)
diff --git a/test/shell/snapshot-usage.sh b/test/shell/snapshot-usage.sh
index 991c18a..13be4ee 100644
--- a/test/shell/snapshot-usage.sh
+++ b/test/shell/snapshot-usage.sh
@@ -20,6 +20,16 @@ fill() {
dd if=/dev/zero of="$DM_DEV_DIR/$vg1/lvol0" bs=$1 count=1
}
+# give some short time to lock file above
+wait_for_open_() {
+ for i in $(seq 1 50) ; do
+ test $(dmsetup info --noheadings -c -o open $1) -ne 0 && return
+ sleep 0.1
+ done
+
+ die "$1 expected to be openned, but it's not!"
+}
+
cleanup_tail()
{
test -z "$SLEEP_PID" || kill $SLEEP_PID
@@ -52,6 +62,7 @@ if aux target_at_least dm-snapshot 1 10 0 ; then
fi
fi
+# Automatically activates exclusively in cluster
lvcreate -s -l 100%FREE -n $lv $vg --virtualsize $TSIZE
aux extend_filter_LVMTEST
@@ -77,8 +88,7 @@ trap 'cleanup_tail' EXIT
sleep 120 < "$DM_DEV_DIR/$vg1/$lv1" &
SLEEP_PID=$!
-# give some short time to lock file above
-sleep 0.1
+wait_for_open_ "$vg1-$lv1"
# Opened virtual snapshot device is not removable
# it should retry device removal for a few seconds
@@ -173,7 +183,7 @@ lvcreate -s -l100%FREE -n $lv2 $vg1/$lv1
check lv_field $vg1/$lv2 size "7.50p"
lvremove -ff $vg1
-lvcreate -aey -V15E -l1 -n $lv1 -s $vg1
+lvcreate -V15E -l1 -n $lv1 -s $vg1
check lv_field $vg1/$lv1 origin_size "15.00e"
vgremove -ff $vg1
10 years, 2 months
master - tests: reuse existing check dev_md5sum
by Zdenek Kabelac
Gitweb: http://git.fedorahosted.org/git/?p=lvm2.git;a=commitdiff;h=fa23234e71ce8c...
Commit: fa23234e71ce8c5270e5b45bb55556d563383dfc
Parent: d080abf7d60fc23343670e444d4cd26745e3e5d5
Author: Zdenek Kabelac <zkabelac(a)redhat.com>
AuthorDate: Fri Mar 7 10:51:14 2014 +0100
Committer: Zdenek Kabelac <zkabelac(a)redhat.com>
CommitterDate: Mon Mar 10 12:24:10 2014 +0100
tests: reuse existing check dev_md5sum
Create md5sum in reusable way and use exiting check function.
---
test/shell/snapshot-reactivate.sh | 5 ++---
1 files changed, 2 insertions(+), 3 deletions(-)
diff --git a/test/shell/snapshot-reactivate.sh b/test/shell/snapshot-reactivate.sh
index a4478b7..28e1d62 100644
--- a/test/shell/snapshot-reactivate.sh
+++ b/test/shell/snapshot-reactivate.sh
@@ -19,8 +19,7 @@
# Snapshot should remain unmodified
check_s_() {
- rm -f debug.log
- md5sum -c md5
+ check dev_md5sum $vg s
#diff data "$DM_DEV_DIR/$vg/s"
}
@@ -31,7 +30,7 @@ aux prepare_vg
# 8M file with some random data
dd if=/dev/urandom of=data bs=1M count=1
dd if=data of=data bs=1M count=7 seek=1
-echo "$(md5sum data | cut -d' ' -f1) $DM_DEV_DIR/$vg/s" >md5
+echo "$(md5sum data | cut -d' ' -f1) $DM_DEV_DIR/$vg/s" >md5.${vg}-s
lvcreate -aey -L 8M -n o $vg
dd if=data of="$DM_DEV_DIR/$vg/o" bs=1M
10 years, 2 months
master - cleanup: dmeventd convert multiline to single line
by Zdenek Kabelac
Gitweb: http://git.fedorahosted.org/git/?p=lvm2.git;a=commitdiff;h=d080abf7d60fc2...
Commit: d080abf7d60fc23343670e444d4cd26745e3e5d5
Parent: 7b17dfed69e50eabdc288f48a2fde16d4000709f
Author: Zdenek Kabelac <zkabelac(a)redhat.com>
AuthorDate: Mon Mar 10 09:45:03 2014 +0100
Committer: Zdenek Kabelac <zkabelac(a)redhat.com>
CommitterDate: Mon Mar 10 12:24:10 2014 +0100
cleanup: dmeventd convert multiline to single line
Instead of doing multiple different calls, select
stream within a condition.
Replace fprintf with fputc for '\n'
---
daemons/dmeventd/dmeventd.c | 12 ++----------
1 files changed, 2 insertions(+), 10 deletions(-)
diff --git a/daemons/dmeventd/dmeventd.c b/daemons/dmeventd/dmeventd.c
index 343180d..6206058 100644
--- a/daemons/dmeventd/dmeventd.c
+++ b/daemons/dmeventd/dmeventd.c
@@ -632,18 +632,10 @@ static void _no_intr_log(int level, const char *file, int line,
return;
va_start(ap, f);
-
- if (level < _LOG_WARN)
- vfprintf(stderr, f, ap);
- else
- vprintf(f, ap);
-
+ vfprintf((level < _LOG_WARN) ? stderr : stdout, f, ap);
va_end(ap);
- if (level < _LOG_WARN)
- fprintf(stderr, "\n");
- else
- fprintf(stdout, "\n");
+ fputc('\n', (level < _LOG_WARN) ? stderr : stdout);
}
static sigset_t _unblock_sigalrm(void)
10 years, 2 months