From: mwilck@arcor.de Date: Mon, 5 Aug 2013 20:37:47 +0000 (+0200) Subject: tests/env-ddf-template: some helper functions X-Git-Tag: mdadm-3.3~31 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=ee7d0c09cdaf27cc3cc1a479be022b108c9c2771;p=thirdparty%2Fmdadm.git tests/env-ddf-template: some helper functions helper functions to determine the list of devices in an array, etc. Signed-off-by: Martin Wilck Signed-off-by: NeilBrown --- diff --git a/tests/env-ddf-template b/tests/env-ddf-template index fa7af1f5..1c1ca124 100644 --- a/tests/env-ddf-template +++ b/tests/env-ddf-template @@ -1,3 +1,24 @@ +get_sysdir() { + local mddev=$1 + [ -L $mddev ] && mddev=$(readlink -f $mddev) + echo "/sys/class/block/$(basename $mddev)/md" +} + +get_raiddisks() { + sysdir=$(get_sysdir "$1") + for i in $(seq 0 $(($(cat $sysdir/raid_disks)-1))); do + if [ -d $sysdir/rd$i ]; then + readlink -f /dev/block/$(cat $sysdir/rd$i/block/dev) + else + echo MISSING + fi + done +} + +get_present() { + get_raiddisks $1 | grep -vc MISSING +} + ddf_check() { udevadm settle case $1 in