This implements customizable initramfs compression, based on the Pentoo
genkernel fork (SVN revs r2142, r2145, by Jens Pranaitis
<jens@chaox.net>).
New configuration option COMPRESS_INITRD_TYPE to allow manual selection,
whereas the Pentoo fork provided auto-selection based on what was
available in the kernel configuration. Auto-selection is used by
default, and is available with the argument of 'best' to the new option.
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
Hello,
Due to the changes in glibc-2.14 busybox no longer compiles when NFS
support is enabled. This breaks genkernel. The following is a very
crude patch to just make things work on glibc-2.14 systems. A better
patch would be to detect glibc-2.14 and then make a config decision.
The best patch would be to port libtirpc to openssl, make busybox link
against libtirpc, restore NFS support, and put an end to this whole
mess. But in the meantime:
commit 80d1e89995f055a37f07f9f7f4c7e21660abd527
Author: Borg Onion <borg.onion@gmail.com>
Date: Sat Dec 3 18:02:48 2011 -0800
Disable NFS support to enable glibc-2.14 compatibility
instead. At the same time, mount cdrom into /mnt/cdrom instead of
/newroot/mnt/cdrom (which is now just a bind mount), this avoids
losetup to expose unavailable paths inside the live system, breaking
mkfs.btrfs (next upstream version, which does silly things with
/proc/mounts).
Set DO_slowusb as default, and make setup_slowusb unset it if it cannot find
a usb-storage attached. This makes genkernel ramdisk adhere to "noslowusb",
makes the ramdisk only wait if there is a usb-storage attached and should fix
gentoo bug #359619.
By adding the kernelcmd options "dokeymap" to MY_HWOPTS instead of
the HWOPTS version, "keymap" this typo broke the handling of keymaps
if you only had "keymap=<...>" in kernelcmd and did not specify "dokeymap"
too (which according to documentation should not be needed).
Only reason for this logic is to limit what entries in /proc/partitions
mdadm scans for arrays.
However this seems to break raids in containers (example Intel fakeraids)
as those containers are never scanned for arrays.
(On my system it activates /dev/md/imsm0, but never /dev/md/Gentoo_0 which
is the real RAID with the removed logic)
If someone has something dead-slow they do not want scanned for raids,
it is better if they specify their own mdadm.conf.
If someone finds an example of something that mdadm scans for arrays that
is not supposed to be scanned, we may handle that then.
This makes the ramdisk always mount some kind of /dev,
and then try to move it to the new root.
This unbreaks handling of nodes created pre-udev likefor example lvm does.
This can be considered good practice, likely less chance that nodes
created in the ramdisk disapperes when switching root.
Some applications (mostly debugging/benchmarking) also needs this to
survive the switch_root.