lkml.org 
[lkml]   [2013]   [Nov]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 1/2] init/Kconfig: add option to disable kernel compression
+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@abilis.com>
> ---
> 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
+

-Vineet



\
 
 \ /
  Last update: 2013-11-14 12:01    [W:0.160 / U:0.376 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site