Messages in this thread Patch in this message | | | Date | Thu, 10 Oct 2013 20:13:36 +0530 (IST) | From | P J P <> | Subject | Re: [PATCH 2/2] Export initial ramdisk compression config |
| |
Hi,
+-- On Wed, 9 Oct 2013, Andrew Morton wrote --+ | It would be better to make the change in one place, rather than for | each architecture. That would appear to involve moving a hunk from | arch/x86/Makefile into init/Makefile, or perhaps ./Makefile.
Please find attached herein, an updated patch which adds the export snippet to the top level ./Makefile. I tried init/Makefile too, but it does not seem to work.
Thank you! -- Prasad J Pandit / Red Hat Security Response TeamFrom 2bb603f666371289ee660be5cf7a6f87740edd8e Mon Sep 17 00:00:00 2001 From: P J P <prasad@redhat.com> Date: Thu, 10 Oct 2013 19:53:24 +0530 Subject: Export initial ramdisk compression config option
Make menuconfig allows one to choose compression format of an initial ramdisk image. But this choice does not result in duly compressed ramdisk image. Because - $ make install - does not pass on the selected compression choice to the dracut(8) tool, which creates the initramfs file. dracut(8) generates the image with the default compression, ie. gzip(1).
This patch exports the selected compression option to a sub-shell environment, so that it could be used by dracut(8) tool to generate appropriately compressed initramfs images.
There isn't a straight forward way to pass on options to dracut(8) via positional parameters. Because it is indirectly invoked at the end of a $ make install sequence.
# make install -> arch/$arch/boot/Makefile -> arch/$arch/boot/install.sh -> /sbing/installkernel ... -> /sbin/new-kernel-pkg ... -> /sbin/dracut ...
diff --git a/Makefile b/Makefile index 8d0668f..5c7f8aa 100644 --- a/Makefile +++ b/Makefile @@ -720,6 +720,22 @@ mod_strip_cmd = true endif # INSTALL_MOD_STRIP export mod_strip_cmd +# Select initial ramdisk compression format, default is gzip(1). +# This shall be used by the dracut(8) tool while creating an initramfs image. +# +INITRD_COMPRESS=gzip +ifeq ($(CONFIG_RD_BZIP2), y) + INITRD_COMPRESS=bzip2 +else ifeq ($(CONFIG_RD_LZMA), y) + INITRD_COMPRESS=lzma +else ifeq ($(CONFIG_RD_XZ), y) + INITRD_COMPRESS=xz +else ifeq ($(CONFIG_RD_LZO), y) + INITRD_COMPRESS=lzo +else ifeq ($(CONFIG_RD_LZ4), y) + INITRD_COMPRESS=lz4 +endif +export INITRD_COMPRESS ifdef CONFIG_MODULE_SIG_ALL MODSECKEY = ./signing_key.priv -- 1.8.3.1
| |