[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#608538: btrfs root installation results in initramfs busybox prompt



* Ben Hutchings <ben@decadent.org.uk> [Mon Jan 03, 2011 at 09:50:46PM +0000]:
> On Mon, 2011-01-03 at 22:16 +0100, Michael Prokop wrote:
> > * Ben Hutchings <ben@decadent.org.uk> [Mon Jan 03, 2011 at 09:03:37PM +0000]:
> > > On Mon, 2011-01-03 at 16:37 -0400, Joey Hess wrote:

> > > > So, at least a workaround would be for the initramfs to have crc32c added to
> > > > it whenever libcrc32c is. Attached patch just adds it to the base modules
> > > > list; since btrfs is already there that seems like an ok quick fix.

> > > This is stupid.  Without a declared module dependency, a MODULES=dep
> > > configuration will remain broken.  I think this needs to be fixed in the
> > > kernel instead.

> > > > Note that it would probably be better to try first loading hardware optimised
> > > > versions like crc32c-intel, and only load crc32c if they fail to load.

> > > I believe that happens automatically, as the hardware-optimised modules
> > > provide an alias of 'crc32c'.

> > > > (BTW, this bug probably also breaks netbooting with certian ethernet cards
> > > > whose drivers also use libcrc32c.)

> > > Right.

> > Thanks for showing up, would be nice to see this fixed.

> > I just want to make sure you're aware of my bugreport #602254
> > (which Joey seemed to have noticed already according to its
> > BTS history).

> > Ben, do you think this could be fixed at the kernel side?

> Eventually, yes, but unfortunately it turns out that we can't fix it
> immediately.  'depmod' only looks at symbol dependencies; there is no
> way for modules to declare explicit dependencies through module
> information.  We can bodge it by exporting a specific symbol from crc32c
> and referring to that from libcrc32c, but since the optimised version
> doesn't satisfy that dependency it will not be loaded.

Ok, that's what I expected.

> So I'm afraid this will have to be worked around in initramfs-tools for
> now: whenever you add libcrc32c, add crc32c as well (no matter how
> libcrc32c was selected).

So we should just add crc32c-intel, libcrc32c and crc32c by default
via initramfs-tools for now, ACK?

Thanks.

regards,
-mika-

Attachment: signature.asc
Description: Digital signature


Reply to: