Re: [PATCH 1/2] init/Kconfig: add option to disable kernelcompression

From: Christian Ruppert
Date: Fri Nov 15 2013 - 11:58:28 EST


On Thu, Nov 14, 2013 at 03:51:22PM +0530, Vineet Gupta wrote:
> +CC Sam for Kconfig wisdom
>
> On 11/14/2013 02:08 PM, Christian Ruppert wrote:
> > Some ARC users say they can boot faster with without kernel compression.
> > This probably depends on things like the FLASH chip they use etc.
> >
> > Until now, kernel compression can only be disabled by removing "select
> > HAVE_<compression>" lines from the architecture Kconfig. So add the
> > Kconfig logic to permit disabling of kernel compression.
> >
> > Signed-off-by: Christian Ruppert <christian.ruppert@xxxxxxxxxx>
> > ---
> > arch/arc/Kconfig | 2 ++
> > init/Kconfig | 12 +++++++++++-
> > 2 files changed, 13 insertions(+), 1 deletion(-)
> >
> > diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
> > index 91dbb27..3991f03 100644
> > --- a/arch/arc/Kconfig
> > +++ b/arch/arc/Kconfig
> > @@ -21,6 +21,8 @@ config ARC
> > select HAVE_ARCH_KGDB
> > select HAVE_ARCH_TRACEHOOK
> > select HAVE_IOREMAP_PROT
> > + select HAVE_KERNEL_UNCOMPRESSED
> > + select HAVE_KERNEL_GZIP
>
> Fine.
>
> > select HAVE_KPROBES
> > select HAVE_KRETPROBES
> > select HAVE_MEMBLOCK
> > diff --git a/init/Kconfig b/init/Kconfig
> > index 3ecd8a1..b1a6f92 100644
> > --- a/init/Kconfig
> > +++ b/init/Kconfig
> > @@ -97,6 +97,9 @@ config LOCALVERSION_AUTO
> >
> > which is done within the script "scripts/setlocalversion".)
> >
> > +config HAVE_KERNEL_UNCOMPRESSED
> > + bool
> > +
>
> This is good to avoid perturbing other arches.
>
> > config HAVE_KERNEL_GZIP
> > bool
> >
> > @@ -118,7 +121,6 @@ config HAVE_KERNEL_LZ4
> > choice
> > prompt "Kernel compression mode"
> > default KERNEL_GZIP
> > - depends on HAVE_KERNEL_GZIP || HAVE_KERNEL_BZIP2 || HAVE_KERNEL_LZMA || HAVE_KERNEL_XZ || HAVE_KERNEL_LZO || HAVE_KERNEL_LZ4
> > help
> > The linux kernel is a kind of self-extracting executable.
> > Several compression algorithms are available, which differ
> > @@ -137,6 +139,14 @@ choice
> >
> > If in doubt, select 'gzip'
> >
> > +config KERNEL_UNCOMPRESSED
> > + bool "No compression"
> > + depends on HAVE_KERNEL_UNCOMPRESSED || ! ( HAVE_KERNEL_GZIP || HAVE_KERNEL_BZIP2 || HAVE_KERNEL_LZMA || HAVE_KERNEL_XZ || HAVE_KERNEL_LZO || HAVE_KERNEL_LZ4 )
> > + help
> > + No compression at all. The kernel is huge but the compression and
> > + decompression times are zero.
> > + This is usually not what you want.
> > +
> > config KERNEL_GZIP
> > bool "Gzip"
> > depends on HAVE_KERNEL_GZIP
> >
>
> How about doing this part slightly differently (simpler IMO).
> We add uncompressed as just another category rather than being a special case.
>
> Indicative diff against current mainline code
>
> choice
> prompt "Kernel compression mode"
> default KERNEL_GZIP
> - depends on HAVE_KERNEL_GZIP || HAVE_KERNEL_BZIP2 || HAVE_KERNEL_LZMA ||
> HAVE_KERNEL_XZ || HAVE_KERNEL_LZO || HAVE_KERNEL_LZ4
> + depends on HAVE_KERNEL_GZIP || HAVE_KERNEL_BZIP2 || HAVE_KERNEL_LZMA ||
> HAVE_KERNEL_XZ || HAVE_KERNEL_LZO || HAVE_KERNEL_LZ4 || HAVE_KERNEL_UNCOMPRESSED
>
>
> +config KERNEL_UNCOMPRESSED
> + bool "No compression"
> + depends on HAVE_KERNEL_UNCOMPRESSED
> +

Good Idea. I fixed this and sent the updated patch directly in reply to
H. Peter's revert patch to avoid too much patch ping-pong:
http://www.spinics.net/lists/kernel/msg1636397.html

Greetings,
Christian
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/