]> git.ipfire.org Git - thirdparty/dracut.git/commitdiff
dracut-functions.sh: exit for missing --force-add or --add dracut modules
authorHarald Hoyer <harald@redhat.com>
Fri, 12 Sep 2014 08:19:28 +0000 (10:19 +0200)
committerHarald Hoyer <harald@redhat.com>
Fri, 12 Sep 2014 08:20:45 +0000 (10:20 +0200)
Better exit with fail early, so there is no surprise on reboot.

(cherry picked from commit a49cac2e65eb1beb8b0442b74aaa4851d184c0ce)

dracut-functions.sh

index 8a0cd30157511bdaa24c54570fde70d4cbddd031..6e0b44ae5490e6db33320eda74b636912284b1ca 100755 (executable)
@@ -1314,11 +1314,17 @@ for_each_module_dir() {
 
     # Report any missing dracut modules, the user has specified
     _modcheck="$add_dracutmodules $force_add_dracutmodules"
-    [[ $dracutmodules != all ]] && _modcheck="$m $dracutmodules"
+    [[ $dracutmodules != all ]] && _modcheck="$_modcheck $dracutmodules"
     for _mod in $_modcheck; do
         [[ " $mods_to_load " == *\ $_mod\ * ]] && continue
-        [[ " $omit_dracutmodules " == *\ $_mod\ * ]] && continue
+
+        [[ " $force_add_dracutmodules " != *\ $_mod\ * ]] \
+            && [[ " $omit_dracutmodules " == *\ $_mod\ * ]] \
+            && continue
+
         derror "dracut module '$_mod' cannot be found or installed."
+        [[ " $force_add_dracutmodules " == *\ $_mod\ * ]] && exit 1
+        [[ " $add_dracutmodules " == *\ $_mod\ * ]] && exit 1
     done
 }