summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZdenek Kabelac <zkabelac@redhat.com>2021-03-26 16:05:42 +0100
committerZdenek Kabelac <zkabelac@redhat.com>2021-03-26 20:39:41 +0100
commit4c59b2aa216cb5649fe5e3f54230e85ee994869b (patch)
tree011d90b25efe46773febf39eb54fc3f7d12707c7
parent5ef8d845694c79683ebdbdeec69eb2e534f4b1d2 (diff)
downloadlvm2-4c59b2aa216cb5649fe5e3f54230e85ee994869b.tar.gz
tests: add aux mdadm_assemble
Wrapper for slowed version of mdadm --assemble
-rw-r--r--test/lib/aux.sh16
1 files changed, 16 insertions, 0 deletions
diff --git a/test/lib/aux.sh b/test/lib/aux.sh
index 6cf86bc38..0ce2b8b07 100644
--- a/test/lib/aux.sh
+++ b/test/lib/aux.sh
@@ -780,6 +780,22 @@ mdadm_create() {
done
}
+mdadm_assemble() {
+ STRACE=
+ [ "$DM_DEV_DIR" = "/dev" ] && mdadm -V 2>&1 | grep " v3.2" && {
+ # use this 'trick' to slow down mdadm which otherwise
+ # is racing with udev rule since mdadm internally
+ # opens and closes raid leg devices in RW mode and then
+ # tries to get exlusive access to the leg device during
+ # insertion to kernel and fails during assembly
+ # There can be some other affected version of mdadm.
+ STRACE="strace -f -o /dev/null"
+ }
+
+ $STRACE mdadm --assemble "$@"
+ udev_wait
+}
+
cleanup_md_dev() {
local IFS=$IFS_NL
local i