From: Ingo Molnar <mingo@kernel.org>
To: Ard Biesheuvel <ardb@kernel.org>
Cc: Jann Horn <jannh@google.com>,
Thomas Gleixner <tglx@linutronix.de>,
Ingo Molnar <mingo@redhat.com>, Borislav Petkov <bp@alien8.de>,
Dave Hansen <dave.hansen@linux.intel.com>,
x86@kernel.org, "H. Peter Anvin" <hpa@zytor.com>,
Masahiro Yamada <masahiroy@kernel.org>,
Nathan Chancellor <nathan@kernel.org>,
Nicolas Schier <nicolas@fjasle.eu>,
linux-efi@vger.kernel.org,
Andrew Morton <akpm@linux-foundation.org>,
linux-kbuild@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH RFC] x86: Add CONFIG_KERNEL_UNCOMPRESSED support
Date: Sun, 23 Feb 2025 19:33:56 +0100 [thread overview]
Message-ID: <Z7tqFCo4smCysrfQ@gmail.com> (raw)
In-Reply-To: <CAMj1kXFT6wkP=eRemR1Y=C-fk2VxNurLHMy74VRFLNmx6NkOAA@mail.gmail.com>
* Ard Biesheuvel <ardb@kernel.org> wrote:
> > But I wasn't sure how to wire that up in a nice way. I guess the
> > nicest option would be to create a separate kconfig variable for
> > the compression level to use for any cmd_lz4/cmd_lz4_with_size
> > invocations in the build process; and then maybe only make this
> > option visible if LZ4 is selected as kernel compression method?
> >
> > Another option would be to create a new option in the "Kernel
> > compression mode" choice menu with a name like "LZ4 (fast)", turn
> > CONFIG_KERNEL_LZ4 into an internal flag that is selected by both
> > LZ4 variants shown in the choice menu, and duplicate some of the
> > make rules, but that seems overly complicated.
> >
>
> I didn't realise that KERNEL_UNCOMPRESSED already exists and you are
> just wiring it up for x86. But I still think that we should avoid
> that, not only because it is yet another bzImage format but also
> because I still see a 3x size reduction even with the fastest
> setting.
>
> I think adding one Kconfig symbol that depends on KERNEL_LZ4 and
> switches from -9 to -1 for LZ4 only is reasonable.
Maybe a CONFIG_COMPRESS_FAST option that maps to and enables the
current fastest compressor? Then we can also add LZ4_FAST and map it to
it. (And if a future fastest compressor is added it can change this
mapping.) Or something like that?
And if there's still a measurable difference in total build time (say
larger than 1%) from doing it all uncompressed, then I think we should
go with Jann's original patch that hooks up zero-compression on x86. It
doesn't look overly complicated.
Thanks,
Ingo
prev parent reply other threads:[~2025-02-23 18:34 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-01-21 22:16 [PATCH RFC] x86: Add CONFIG_KERNEL_UNCOMPRESSED support Jann Horn
2025-01-22 13:30 ` Ard Biesheuvel
2025-01-22 13:54 ` Jann Horn
2025-01-22 14:19 ` Tor Vic
2025-01-22 14:30 ` Jann Horn
2025-01-22 14:52 ` Tor Vic
2025-01-22 14:21 ` Ard Biesheuvel
2025-02-23 18:33 ` Ingo Molnar [this message]
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=Z7tqFCo4smCysrfQ@gmail.com \
--to=mingo@kernel.org \
--cc=akpm@linux-foundation.org \
--cc=ardb@kernel.org \
--cc=bp@alien8.de \
--cc=dave.hansen@linux.intel.com \
--cc=hpa@zytor.com \
--cc=jannh@google.com \
--cc=linux-efi@vger.kernel.org \
--cc=linux-kbuild@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=masahiroy@kernel.org \
--cc=mingo@redhat.com \
--cc=nathan@kernel.org \
--cc=nicolas@fjasle.eu \
--cc=tglx@linutronix.de \
--cc=x86@kernel.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.