lvm: wait for all rd_LVM_LV and rd_LVM_VG specified to appear
authorHarald Hoyer <harald@redhat.com>
Fri, 23 Jul 2010 10:16:11 +0000 (12:16 +0200)
committerHarald Hoyer <harald@redhat.com>
Fri, 23 Jul 2010 10:16:11 +0000 (12:16 +0200)
modules.d/90lvm/parse-lvm.sh

index 2d453e8..5e93d3e 100755 (executable)
@@ -1,10 +1,18 @@
-if getarg rd_NO_LVM; then
-    info "rd_NO_LVM: removing LVM activation"
-    rm -f /etc/udev/rules.d/64-lvm*.rules
-fi
-
 if [ -e /etc/lvm/lvm.conf ] && getarg rd_NO_LVMCONF; then
     rm -f /etc/lvm/lvm.conf
 fi
 
+if getarg rd_NO_LVM; then
+    info "rd_NO_LVM: removing LVM activation"
+    rm -f /etc/udev/rules.d/64-lvm*.rules
+else
+    for dev in $(getargs rd_LVM_VG=) $(getargs rd_LVM_LV=); do
+        printf '[ -e "/dev/%s" ] || exit 1\n' $dev \
+            >> /initqueue-finished/lvm.sh
+        {
+            printf '[ -e "/dev/%s" ] || ' $dev
+            printf 'warn "LVM "%s" not found"\n' $dev
+        } >> /emergency/00-lvm.sh
+    done
+fi