diff options
author | Harald Hoyer <harald@redhat.com> | 2013-07-12 10:14:42 +0200 |
---|---|---|
committer | Harald Hoyer <harald@redhat.com> | 2013-07-12 10:15:10 +0200 |
commit | 85231e1ff3e5034ef8476020d49895239541ff73 (patch) | |
tree | 07c16e1b311dce6e9e1c667bdbad9b9abc93cb21 /modules.d | |
parent | 88396c383cbe2937cac7dcff9f7100827738a67c (diff) | |
download | dracut-85231e1ff3e5034ef8476020d49895239541ff73.tar.gz dracut-85231e1ff3e5034ef8476020d49895239541ff73.tar.bz2 dracut-85231e1ff3e5034ef8476020d49895239541ff73.zip |
base/module-setup.sh: do not add devs to initqueue/finished
when need-initqueue is not set in systemd mode
Diffstat (limited to 'modules.d')
-rwxr-xr-x | modules.d/99base/module-setup.sh | 37 |
1 files changed, 20 insertions, 17 deletions
diff --git a/modules.d/99base/module-setup.sh b/modules.d/99base/module-setup.sh index d35cba50..57fd3bc5 100755 --- a/modules.d/99base/module-setup.sh +++ b/modules.d/99base/module-setup.sh @@ -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 } |