Blob Blame History Raw
From 848edf22f0a2f664310026871139e1ab0f49bd52 Mon Sep 17 00:00:00 2001
From: Harald Hoyer <harald@redhat.com>
Date: Fri, 3 Jul 2015 14:24:50 +0200
Subject: [PATCH] multipath: install all multipath path selector kernel modules

By default, dracut only builds in dm-service-time into the initramfs as
that is the default multipath.conf path selector. If the user changes
the path selector to "round robin" on the fly and runs dracut, multipath
does not find any paths on boot and the user will be dropped into a
shell.

Apparently, in RHEL7 dracut defaults to "hostonly" mode, i.e. modules
not currently in use at the time dracut runs do not get built into
initramfs. This is definitely one case where this doesn't work. A change
to reconfigure multipath probably should not render the system
unbootable.

https://bugzilla.redhat.com/show_bug.cgi?id=1195392
(cherry picked from commit f11d7a81e2eec37ed5b6708ed8cd359f0a5eaa69)
---
 modules.d/90multipath/module-setup.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/modules.d/90multipath/module-setup.sh b/modules.d/90multipath/module-setup.sh
index 321f13e..831c99f 100755
--- a/modules.d/90multipath/module-setup.sh
+++ b/modules.d/90multipath/module-setup.sh
@@ -84,7 +84,7 @@ installkernel() {
     }
 
     ( find_kernel_modules_by_path drivers/scsi; if [ "$_arch" = "s390" -o "$_arch" = "s390x" ]; then find_kernel_modules_by_path drivers/s390/scsi; fi;
-      find_kernel_modules_by_path drivers/md )  |  mp_mod_filter  |  instmods
+      find_kernel_modules_by_path drivers/md )  |  mp_mod_filter  |  hostonly='' instmods
 }
 
 # called by dracut