From: Vineet Gupta <Vineet.Gupta1@synopsys.com>
To: Christian Ruppert <christian.ruppert@abilis.com>
Cc: Pavel Roskin <proski@gnu.org>,
Andrew Morton <akpm@linux-foundation.org>,
<linux-kernel@vger.kernel.org>, "H. Peter Anvin" <hpa@zytor.com>,
Noam Camus <noamc@ezchip.com>
Subject: Re: [PATCH 1/2] init/Kconfig: add option to disable kernel compression
Date: Sat, 16 Nov 2013 15:11:52 +0530 [thread overview]
Message-ID: <52873DE0.2090903@synopsys.com> (raw)
In-Reply-To: <20131115165750.GA14807@ab42.lan>
On 11/15/2013 10:27 PM, Christian Ruppert wrote:
> 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@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
>> +
>
> 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
I didn't see that patch in my mailbox. It needs an ACK from me anyways.
-Vineet
next prev parent reply other threads:[~2013-11-16 9:42 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-11-13 16:34 Uncompressed kernel doesn't build on x86_64 Pavel Roskin
2013-11-13 16:49 ` H. Peter Anvin
2013-11-14 8:32 ` Christian Ruppert
2013-11-14 8:38 ` [PATCH 1/2] init/Kconfig: add option to disable kernel compression Christian Ruppert
2013-11-14 10:21 ` Vineet Gupta
2013-11-15 16:57 ` Christian Ruppert
2013-11-16 9:41 ` Vineet Gupta [this message]
2013-11-14 8:38 ` [PATCH 2/2] x86: Add support for uncompressed kernel images Christian Ruppert
2013-11-14 17:31 ` H. Peter Anvin
2013-11-15 9:31 ` Christian Ruppert
2013-11-14 17:45 ` H. Peter Anvin
2013-11-15 9:49 ` Christian Ruppert
2013-11-15 10:06 ` H. Peter Anvin
2013-11-14 14:13 ` Uncompressed kernel doesn't build on x86_64 Austin S Hemmelgarn
2013-11-14 23:38 ` Pavel Roskin
-- strict thread matches above, loose matches on Subject: below --
2013-11-18 9:48 [PATCH] [FIX] init/Kconfig: fix option to disable kernel compression Christian Ruppert
2013-11-18 9:51 ` [PATCH 1/2] init/Kconfig: add " Christian Ruppert
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=52873DE0.2090903@synopsys.com \
--to=vineet.gupta1@synopsys.com \
--cc=akpm@linux-foundation.org \
--cc=christian.ruppert@abilis.com \
--cc=hpa@zytor.com \
--cc=linux-kernel@vger.kernel.org \
--cc=noamc@ezchip.com \
--cc=proski@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.