Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 308761 - sys-kernel/genkernel-3.4.10.907 multipath support incomplete, wont boot from multipath root device.
Summary: sys-kernel/genkernel-3.4.10.907 multipath support incomplete, wont boot from ...
Status: RESOLVED DUPLICATE of bug 286187
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Core system (show other bugs)
Hardware: AMD64 Linux
: High normal (vote)
Assignee: Gentoo Genkernel Maintainers
URL: http://ru.gentoo-wiki.com/wiki/HOWTO_...
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-03-09 23:04 UTC by Marc-André Labonté
Modified: 2011-01-20 18:48 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Marc-André Labonté 2010-03-09 23:04:21 UTC
sys-kernel/genkernel-3.4.10.907 does include multipath support when ran with the --multipath option but does not populate /dev/mapper with device files.  I found the russian wiki page stated as url and used it to patch genkernel's linuxrc to get it working.  

Reproducible: Always

Steps to Reproduce:
1. Connect server to SAN, create LUN, map LUN to server
2. Boot using live cd
3. Install gentoo on LUN, just like a regular hard drive
4. Include multipath in kernel, compile, run genkernel with --multipath option
5. Configure grub to use genkernel's initramfs and /dev/mapper/whateverLUN as real_root
6. reboot
Actual Results:  
System wont boot, initramfs script is unable to use the specified multipath device (/dev/mapper/LUNp2) as a root file system.  I can choose to drop to a shell when prompted to manually select an alternate root file system.  In the shell, it is possible to populate /dev/mapper manually using multipath and kpartx.  They are included by genkernel and they work.

Expected Results:  
System will boot using a multipath device as a root filesystem:

mybox genkernel.d # df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/LUNp2 4.0G  207M  3.6G   6% /
udev                   10M  220K  9.8M   3% /dev
/dev/mapper/LUNp3 9.9G  4.0G  5.4G  43% /usr
/dev/mapper/LUNp4 11G  348M  9.6G   4% /var


I used the code from the wiki page http://ru.gentoo-wiki.com/wiki/HOWTO_Multipath_boot_support to produce the following patch:

--- linuxrc.orig	2010-03-09 17:55:44.000000000 -0500
+++ linuxrc	2010-03-09 18:31:45.000000000 -0500
@@ -98,6 +98,10 @@
 			DMRAID_OPTS=`parse_opt "${x}"`
 			USE_DMRAID_NORMAL=1
 		;;
+		# Start Multipath options
+		dompath)
+		        USE_MPATH_NORMAL=1
+		;;
 		doevms)
 			USE_EVMS_NORMAL=1
 		;;
@@ -298,6 +302,28 @@
 # Setup md device nodes if they dont exist
 setup_md_device
 
+startMultipath() {
+if [ "${USE_MPATH_NORMAL}" = '1' ]
+then
+        # Here, we check for /dev/device-mapper, and if it exists, we setup a
+        # a symlink, which should hopefully fix bug #142775 and bug #147015
+        if [ -e /dev/device-mapper ] && [ ! -e /dev/mapper/control ]
+        then
+                mkdir -p /dev/mapper
+                ln -sf /dev/device-mapper /dev/mapper/control
+        fi
+
+        if [ -e /sbin/multipath ] ; then
+                good_msg "Activating Multipath devices"
+                /sbin/multipath -v 0 > /dev/null
+                for ASDF in /dev/mapper/*; do /sbin/kpartx -a $ASDF; done
+        fi
+fi
+}
+
+# Start multipath
+startMultipath
+
 # Scan volumes
 startVolumes

Apply against /usr/share/genkernel/defaults/linuxrc, run genkernel and reboot to fix
Comment 1 Sebastian Pipping gentoo-dev 2011-01-20 18:48:37 UTC
Looks like a duplicate of bug #286187.
If you disagree please re-open this bug.

Please review and test the patch in the other bug if you get a chance.

*** This bug has been marked as a duplicate of bug 286187 ***