]> git.ipfire.org Git - thirdparty/dracut.git/commitdiff
base/module-setup.sh: do not add devs to initqueue/finished
authorHarald Hoyer <harald@redhat.com>
Fri, 12 Jul 2013 08:14:42 +0000 (10:14 +0200)
committerHarald Hoyer <harald@redhat.com>
Fri, 12 Jul 2013 08:15:10 +0000 (10:15 +0200)
when need-initqueue is not set in systemd mode

modules.d/99base/module-setup.sh

index d35cba50af2f7fc9de8abfa8bfcfb64751dbb0fe..57fd3bc5c1b5c73ced848bd3a18e981db2a7a77f 100755 (executable)
@@ -103,21 +103,24 @@ install() {
     ln -sf initrd-release $initdir/etc/os-release
 
     ## save host_devs which we need bring up
-    (
-        if dracut_module_included "systemd"; then
-            DRACUT_SYSTEMD=1
-        fi
-        PREFIX="$initdir"
-
-        . "$moddir/dracut-lib.sh"
-
-        for _dev in ${host_devs[@]}; do
-            _pdev=$(get_persistent_dev $_dev)
-
-            case "$_pdev" in
-                /dev/?*) wait_for_dev $_pdev;;
-                *) ;;
-            esac
-        done
-    )
+    if [[ -f "$initdir/lib/dracut/need-initqueue" ]] || ! dracut_module_included "systemd"; then
+        (
+            if dracut_module_included "systemd"; then
+                DRACUT_SYSTEMD=1
+            fi
+            PREFIX="$initdir"
+
+            . "$moddir/dracut-lib.sh"
+
+            for _dev in ${host_devs[@]}; do
+                [[ "$_dev" == "$root_dev" ]] && continue
+                _pdev=$(get_persistent_dev $_dev)
+
+                case "$_pdev" in
+                    /dev/?*) wait_for_dev $_pdev;;
+                    *) ;;
+                esac
+            done
+        )
+    fi
 }