Bug 498445 - boot from multi-device btrfs fails
boot from multi-device btrfs fails
Product: Fedora
Classification: Fedora
Component: mkinitrd (Show other bugs)
All Linux
low Severity medium
: ---
: ---
Assigned To: Peter Jones
Fedora Extras Quality Assurance
Depends On:
  Show dependency treegraph
Reported: 2009-04-30 10:49 EDT by Tomasz Torcz
Modified: 2010-01-12 10:31 EST (History)
5 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2010-01-12 10:31:01 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)

  None (edit)
Description Tomasz Torcz 2009-04-30 10:49:39 EDT
Description of problem:
Initrd on Fedora 11 don't scan devices for btrfs filesystem spanning over multiple of them. It cause failure when / is on multiple devices.

Version-Release number of selected component (if applicable):
Fedora 11 preview.

Steps to Reproduce:
1. Install F11 with btrfs root (/dev/sda2 as /)
2. Boot into new installation.
3. Add second device do rootfs, using "btrfs-vol -a /dev/sdb1 /".
4. Try to boot.
Actual results:
Booting stop because it unable to mount /. Last lines displayed:

btrfs: failed to read chunk tree on sda2
btrfs: open_ctree failed

Expected results:
Succesful boot, of course.

Additional info:
I've looked into initrd and noticed it is missing invocation of "btrfsctl -a". This command scans block devices, finds parts of btrfs filesystems and allows kernel to assemble them.
After booting CD in rescue mode and "btrfsctl -a" I can mount this filesystem.
Comment 1 Bug Zapper 2009-06-09 10:53:19 EDT
This bug appears to have been reported against 'rawhide' during the Fedora 11 development cycle.
Changing version to '11'.

More information and reason for this action is here:
Comment 2 Mathieu Chouquet-Stringer 2009-07-20 13:29:22 EDT
I have somewhat the same issue except my btrfs volume is not a system filesystem (meaning not /, /usr, /var or else).  But still, because it spans over multiple device, it always fail to be mounted at boot.  Same fix reported by Tomasz: I have to issue a btrfsctl -a before I can mount it.

I guess this will be fixed when you issue this command in /init in the initrd image.
Comment 3 Hans de Goede 2010-01-12 10:31:01 EST
This is a mass edit of all mkinitrd bugs.

Thanks for taking the time to file this bug report (and/or commenting on it).

As you may have heard in Fedora 12 mkinitrd has been replaced by dracut. In Fedora 12 the mkinitrd package is still around as some programs depend on
certain libraries it provides, but mkinitrd itself is no longer used.

In Fedora 13 mkinitrd will be removed completely. This means that all work
on initrd has stopped.

Rather then keeping mkinitrd bugs open and giving false hope they might get fixed we are mass closing them, so as to clearly communicate that no more work will be done on mkinitrd. We apologize for any inconvenience this may cause. 

If you are using Fedora 11 and are experiencing a mkinitrd bug you cannot work around, please upgrade to Fedora 12. If you experience problems with the initrd in Fedora 12, please file a bug against dracut.

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