Bug#940887: Integrate ZSTD patches *Kernel compression: add ZSTD, remove LZMA1 and BZIP2*

2022-05-30 Thread Diederik de Haas
Control: tag -1 moreinfo

On Sat, 21 Sep 2019 16:00:55 +0200 Paul Menzel  wrote:
> Package: src:linux
> Version: 5.2.9-2
> Severity: wishlist
> 
> It’d be awesome, if you applied Adam’s and Nick’s patches for ZSTD 
> support [1] to the Debian kernel, so users can test those early for the 
> next Debian release.
> 
> [1]: https://lore.kernel.org/patchwork/cover/1009317/

That URL gives a 404. Is there an update patch URL?
Or is it perhaps already integrated into the (upstream) Linux kernel?

IOW: what's the current status?

signature.asc
Description: This is a digitally signed message part.


Bug#940887: Integrate ZSTD patches *Kernel compression: add ZSTD, remove LZMA1 and BZIP2*

2019-09-22 Thread Adam Borowski
On Sat, Sep 21, 2019 at 04:00:55PM +0200, Paul Menzel wrote:
> Dear Linux folks,
> 
> 
> It’d be awesome, if you applied Adam’s and Nick’s patches for ZSTD support
> [1] to the Debian kernel, so users can test those early for the next Debian
> release.

> [1]: https://lore.kernel.org/patchwork/cover/1009317/

While adding the first part, ZSTD initrd and image, might be plausible,
cleanup like the rest of the patchset is right out.

I guess it's a time to resubmit the patchset upstream... except that we're
right in the middle of the merge window.


Meow!
-- 
⢀⣴⠾⠻⢶⣦⠀ A MAP07 (Dead Simple) raspberry tincture recipe: 0.5l 95% alcohol,
⣾⠁⢠⠒⠀⣿⡁ 1kg raspberries, 0.4kg sugar; put into a big jar for 1 month.
⢿⡄⠘⠷⠚⠋⠀ Filter out and throw away the fruits (can dump them into a cake,
⠈⠳⣄ etc), let the drink age at least 3-6 months.



Bug#940887: Integrate ZSTD patches *Kernel compression: add ZSTD, remove LZMA1 and BZIP2*

2019-09-21 Thread Paul Menzel

Package: src:linux
Version: 5.2.9-2
Severity: wishlist


Dear Linux folks,


It’d be awesome, if you applied Adam’s and Nick’s patches for ZSTD 
support [1] to the Debian kernel, so users can test those early for the 
next Debian release.


Here is the cover letter text:


Hi!
As new compressors get invented, they tend to find their way into the
kernel, yet we never prune superseded ones.  It's time to do so.

In particular, BZIP2 is drastically slower than other compressors we
have, even when they achieve smaller sizes.  It takes more memory, too.
And, BZIP2 is not used anywhere else in the kernel -- just for booting
the kernel itself and the initrd.  Thus, we can drop it from the tree
completely, making Linus happier by around 900 lines.

LZMA1 is redundant with XZ (LZMA2), and unlike the latter, it uses its own
copy of code that's not shared with anything else (some drivers use XZ).
Let's drop it as well.  Some bootloaders can use it thus let's keep the
Kconfig option, but I left no piece of code inside the kernel itself.

On the other hand, Nick Terrell has a couple of patches adding ZSTD support
(using code already in use in multiple pieces around the kernel).  ZSTD is
strong and fast, obsoleting all mid-range compressors.  As the removal of
BZIP2 and LZMA1 would be hopelessly entangled with this addition, I'm
resending Nick's patches here.  I've been booting using them since Oct'17
on amd64 (kernel+initrd), armhf and arm64 (initrd) without issues, other
folks tested various other architectures as well.

Thus, I'd recommend people to use:
* XZ for most machines
* ZSTD where speed is important
* mybe LZ4 is some special cases
(grub and u-boot are ridiculously slow at reading, making fast but weak
decompressors a net loss.  On the other hand, XZ decompresses pretty fast
but is very slow at compress time, making ZSTD preferred for rapid devel
cycles.)

* we can't get rid of GZIP in foreseable future
* LZO is obsolete but is used elsewhere in the kernel

Total:
 69 files changed, 518 insertions(+), 1785 deletions(-)

Not sure whose tree this patchset should go through.  I'm also not sure
how finely split into commits you want the arch bits be; I included
defconfig bits all together, yet separated code changes per-arch.


Meow!



Kind regards,

Paul


[1]: https://lore.kernel.org/patchwork/cover/1009317/