[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CALCETrVnc6pWKcbFWeJHmPVDtmD5Js_LbW_AVbx-sBJ0hpRNwQ@mail.gmail.com>
Date: Tue, 28 Mar 2017 15:55:47 -0700
From: Andy Lutomirski <luto@...capital.net>
To: "H. Peter Anvin" <hpa@...or.com>
Cc: Chao Peng <chao.p.peng@...ux.intel.com>,
Arnd Bergmann <arnd@...db.de>, Michal Marek <mmarek@...e.com>,
Sebastian Andrzej Siewior <bigeasy@...utronix.de>,
Sergey Senozhatsky <sergey.senozhatsky@...il.com>,
Yinghai Lu <yinghai@...nel.org>,
Thomas Gleixner <tglx@...utronix.de>,
Ingo Molnar <mingo@...hat.com>,
"the arch/x86 maintainers" <x86@...nel.org>,
Kees Cook <keescook@...omium.org>, Baoquan He <bhe@...hat.com>,
"H.J. Lu" <hjl.tools@...il.com>, Paul Bolle <pebolle@...cali.nl>,
Masahiro Yamada <yamada.masahiro@...ionext.com>,
Borislav Petkov <bp@...e.de>,
Andrew Morton <akpm@...ux-foundation.org>,
Petr Mladek <pmladek@...e.com>,
"David S. Miller" <davem@...emloft.net>,
"Paul E. McKenney" <paulmck@...ux.vnet.ibm.com>,
Andy Lutomirski <luto@...nel.org>,
Thomas Garnier <thgarnie@...gle.com>,
Nicolas Pitre <nicolas.pitre@...aro.org>,
Tejun Heo <tj@...nel.org>, Daniel Mack <daniel@...que.org>,
Helge Deller <deller@....de>, Rik van Riel <riel@...hat.com>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
linux-kbuild <linux-kbuild@...r.kernel.org>
Subject: Re: [PATCH] x86/boot: Support uncompressed kernel
On Tue, Mar 28, 2017 at 3:38 PM, H. Peter Anvin <hpa@...or.com> wrote:
> On 03/28/17 05:01, Chao Peng wrote:
>>>
>>> I guess the next step would be to use CONFIG_XIP_KERNEL on x86,
>>> which requires an uncompressed kernel but has the additional advantage
>>> of sharing the read-only sections of the kernel image across virtual
>>> machines, resulting in better RAM and cache usage.
>>
>> That is something we wanna look into :)
>>
>
> It is, but that is a second order thing... especially since the x86
> kernel makes heavy use of self-patching at the moment. What would be
> more significant, though, would be to avoid the memcpy() and instead
> decode the uncompressed kernel in-place.
>
Having looked at this code recently, I'd rather fix it differently:
use the streaming decompression API and integrate it with the ELF
parsing code so we can decompress directly into the actual load
location. Also, the parse_elf() code needs some serious improved
documentation and robustification. It's absurdly fragile right now.
Powered by blists - more mailing lists