Bug 498445 - boot from multi-device btrfs fails
Summary: boot from multi-device btrfs fails
Keywords:
Status: CLOSED WONTFIX
Alias: None
Product: Fedora
Classification: Fedora
Component: mkinitrd
Version: 11
Hardware: All
OS: Linux
low
medium
Target Milestone: ---
Assignee: Peter Jones
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2009-04-30 14:49 UTC by Tomasz Torcz
Modified: 2010-01-12 15:31 UTC (History)
5 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2010-01-12 15:31:01 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Tomasz Torcz 2009-04-30 14:49:39 UTC
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 14:53:19 UTC
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:
http://fedoraproject.org/wiki/BugZappers/HouseKeeping

Comment 2 Mathieu Chouquet-Stringer 2009-07-20 17:29:22 UTC
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 15:31:01 UTC
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.