Re: [PATCH v8 6/7] x86: Add support for ZSTD compressed kernel

Adam Borowski
2020-07-24T14:08:41Z

On Fri, Jul 24, 2020 at 02:26:40PM +0200, Ingo Molnar wrote:
> > -#ifdef CONFIG_KERNEL_BZIP2
> > +#if defined(CONFIG_KERNEL_BZIP2)
> > # define BOOT_HEAP_SIZE 0x400000
> > -#else /* !CONFIG_KERNEL_BZIP2 */
> > +#elif defined(CONFIG_KERNEL_ZSTD)
> > +# define BOOT_HEAP_SIZE 0x30000
> > +#else
> > # define BOOT_HEAP_SIZE 0x10000
> > #endif
>
> So the other patches explain why the decompression buffer extra space
> was increased from 64k to 128k, but is there a similar
> calculation/estimate for bumping BOOT_HEAD_SIZE from 64k to 192k?
>
> Admittedly the BZ2 exception doesn't set a good example, but maybe we
> can do this for ZSTD?

By the way, I have a patchset on top of this, to drop BZ2 and LZMA(1)
support, that should clean up this code somewhat. And bring a lot of
lines of Linus happiness, as both bzip2 and lzma code are not used by
anything else in the kernel, unlike lzma2 (xz).

If you draw a speed-vs-size graph, at no point bzip2 or lzma are a good
choice, while zstd wins by a large margin for most of the range.

Meow!
--
⢀⣴⠾⠻⢶⣦⠀
⣾⠁⢠⠒⠀⣿⡁
⢿⡄⠘⠷⠚⠋⠀ It's time to migrate your Imaginary Protocol from version 4i to 6i.
⠈⠳⣄⠀⠀⠀⠀