dmraid is entirely broken if you try to use the system static
LVM/device-mapper. Instead, always build our own LVM2 for the initramfs,
using DESTDIR for cleaner install. Dead code paths for old LVM2 build
not removed yet until more users have tested.
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
Dogfooding of the /usr mount code with the matching OpenRC change to
make the mounts RW revealed some bugs and gotchas in our prior code, now
fixed and verified to work.
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
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>
The existing multipath functionality manually picks up a binary and lots
of needed libraries manually, and sometimes misses libraries if the
binary was linked against something else.
Use lddtree from app-misc/pax-utils to get all libraries with the
binary. The only ones that will be missed are those that are dlopen()ed.
cpio is used for copying to preserve directory structure.
lddtree usage replaces a larger manual function from calling ldd, that
was also vulnerable to injections.
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
(commit message rewritten)
When using an integrated initramfs (including in kernel during build),
it's better NOT to compress the initramfs, as the kernel build process
will then be re-compressing it. This can provide space savings on disk
as well as potential time & memory savings (one less decompress pass is
needed before the kernel can use the initramfs).
This functionality was previously available in the undocumented
COMPRESS_INITRD variable.
Code-by: Richard Yao <ryao@cs.stonybrook.edu>
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
(commit message rewritten).