martin f. krafft: use udevsettle to wait for devices

Martin F. Krafft madduck at alioth.debian.org
Wed Jul 2 15:31:49 UTC 2008


Module: mdadm
Branch: build
Commit: c99c2b5ba8aeb79fa9fc1444046bb36602204e52
URL:    http://git.debian.org/?p=pkg-mdadm/mdadm.git;a=commit;h=c99c2b5ba8aeb79fa9fc1444046bb36602204e52

Author: martin f. krafft <madduck at madduck.net>
Date:   Wed Jul  2 16:59:47 2008 +0200

use udevsettle to wait for devices

---

 debian/initramfs/script.local-top |   27 ++++++---------------------
 1 files changed, 6 insertions(+), 21 deletions(-)

diff --git a/debian/initramfs/script.local-top b/debian/initramfs/script.local-top
index 8319f8e..7ae44cb 100644
--- a/debian/initramfs/script.local-top
+++ b/debian/initramfs/script.local-top
@@ -99,27 +99,12 @@ elif [ "$MD_DEVS" != none ]; then
   done
 fi
 
-maybe_break post-mdadm
+if [ -x "$(command -v udevsettle)" ]; then
+  verbose && log_begin_msg "Waiting for udev to process events"
+  udevsettle 10
+  verbose && log_end_msg
+fi
 
-case "$ROOT" in
-  /dev/disk/by-id/md-*)
-    MAXWAIT=10
-    if [ ! -L "$ROOT" ]; then
-      verbose && log_begin_msg "Waiting for udev array link to $ROOT "
-      while [ ! -L "$ROOT" ] && [ $MAXWAIT -gt 0 ]; do
-        verbose && echo -n . >&2
-        sleep 1
-        MAXWAIT=$((MAXWAIT - 1))
-      done
-
-      if [ ! -L "$ROOT" ]; then
-        verbose && log_failure_msg "timed out after $MAXWAIT seconds."
-        exit 1
-      else
-        verbose && log_success_msg "udev array link to $ROOT appeared."
-      fi
-    fi
-    ;;
-esac
+maybe_break post-mdadm
 
 exit 0




More information about the pkg-mdadm-commits mailing list