public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* Broken initrd compression settings in 3.13
@ 2013-12-21  0:41 Linus Torvalds
  2013-12-21  1:39 ` Andrew Morton
  2013-12-23 14:38 ` P J P
  0 siblings, 2 replies; 8+ messages in thread
From: Linus Torvalds @ 2013-12-21  0:41 UTC (permalink / raw)
  To: P J P, Andrew Morton, Jan Beulich; +Cc: Linux Kernel Mailing List

So commit 1bf49dd4be0b ("./Makefile: export initial ramdisk
compression config option") seems to be totally broken.

And I'm not saying that because Jan fixed a make-3.80 incompatibility
in commit 7ac181568342 ("fix build with make 3.80")

I'm saying that because it sets and exports the INITRD_COMPRESS
environment variable completely incorrectly, as far as I can tell.

And it looks like nobody noticed, because apparently dracut didn't use
to care about that INITRD_COMPRESS environment variable at all. But as
of a F20 update yesterday, apparently dracut actually does care, and
as a result nothing actually works.

That setting is f*cking moronic. It sets INITRD_COMPRESS to 'lz4' if
RD_LZ4 is set. But RD_LZ4 is *always* set (unless you go into some
expert settings), so basically what that commit does is to always set
INITRD_COMPRESS to lz4.

Why is that wrong?

It's wrong because

 (a) most sane people don't even have lz4 _installed_, so dracut won't
actually succeed

 (b) there's no way to select the compression level (unlike the
INITRAMFS_COMPRESSION thing that actually has a choice)

 (c) even if you *do* have lz4, it doesn't actually work, because
while that causes the new F20 dracut to compress the initramfs with
lz4, the end result is completely broken, because the F20 "lsinitrd"
scripts don't understand the end result, so now the whole kernel
install fails.

Now, it could be argued that this is a F20 bug, and the fact that F20
has a dracut that can generate a lz4 initrd, but has other tools that
then cannot handle it is arguably indeed a buglet in F20. So the (c)
part is arguably a F20 problem.

HOWEVER.

(a) and (b) are very much kernel bugs.

I'm going to remove that export of INITRD_COMPRESS, since right now
that value is broken and useless. No way does it make sense to
mindlessly default to a compressor that most people don't have, and
that doesn't work with most tools.

             Linus

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2013-12-23 14:38 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-12-21  0:41 Broken initrd compression settings in 3.13 Linus Torvalds
2013-12-21  1:39 ` Andrew Morton
2013-12-21  2:15   ` Linus Torvalds
2013-12-21  2:23     ` Jeff Layton
2013-12-21  3:22       ` Linus Torvalds
2013-12-21  2:33     ` Jeff Layton
2013-12-21  2:36       ` Linus Torvalds
2013-12-23 14:38 ` P J P

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox