Bug 253236 - rootfs not found on boot with multipath
Summary: rootfs not found on boot with multipath
Alias: None
Product: Red Hat Enterprise Linux 5
Classification: Red Hat
Component: device-mapper-multipath
Version: 5.0
Hardware: i686
OS: Linux
Target Milestone: ---
: ---
Assignee: Ben Marzinski
QA Contact: Corey Marthaler
Keywords: Reopened
Depends On:
TreeView+ depends on / blocked
Reported: 2007-08-17 14:53 UTC by Pascal de Bruijn
Modified: 2010-01-12 02:38 UTC (History)
11 users (show)

Clone Of:
Last Closed: 2008-02-11 15:57:25 UTC

Attachments (Terms of Use)

Description Pascal de Bruijn 2007-08-17 14:53:34 UTC
Description of problem:
When installing RHEL5 with it's root on a multipath device, it works just fine.
RHEL5 boots, and works perfectly. Even when a single path fails RHEL5 does a
nice and gentle failover, and continues to work perfectly. However, when RHEL5
is rebooted while a path is still down, the kernel fails to find it's rootfs,
and will not boot.

When the failed path is restored again, the kernel will again find it's rootfs
and boot properly.

During the initrd, the following commands are executed:
dm create mpath0 0 40955040 multipath 0 0 1 1 round-robin 0 2 1 8:0 1000 8:32 1000
dm create mpath1 0 102399840 multipath 0 0 1 1 round-robin 0 2 1 8:16 1000 8:48 1000
My theorie is that while making the mpath0 and mpath1 device the device-mapper
check whether both paths are valid and available. Because one path isn't the
creation of the device files fails. And thus the rootfs can't be mounted.

This is behavior is not ideal. Ideally as long as a single path is valid and
available the mpath0 and mpath1 device files should be created, displaying a
warning that not all paths are up. This will allow RHEL5 to boot even with
failed paths, as long as a single path is available!

Version-Release number of selected component (if applicable):

How reproducible:
Always reproducible!

Steps to Reproduce:
1. Install RHEL5 on machine with multipath rootfs
2. Boot
3. Disable one path (RHEL5 will properly failover)
4. Reboot
5. Kernel will not find rootfs, because a single path is not available.
(6. Re-enable paths)
(7. Reboot)
(8. kernel will again find it's rootfs.)

Actual results:
The kernel will not boot because one of the fibrechannel path is not available

Expected results:
The kernel will boot and use the single remaining available path too boot.

Additional info:

Note You need to log in before you can comment on or make changes to this bug.