[15/21] linux: Compress the kernel, modules and firmware using Zstandard

Message ID ee0fc737-1aad-5039-ef88-fb43ebe7a164@ipfire.org
State Rejected
Headers
Series linux: Update to 5.15.85 and backport many IPFire 3.x changes |

Commit Message

Peter Müller Dec. 26, 2022, 7:29 p.m. UTC
  Zstandard is an ideal compression algorithm with great performance for
this purpose. The kernel is still able to load firmware compressed using
XZ and ramdisks compressed with various other algorirthms.

Backported from IPFire 3.x as a3776d8aee67369dcff8ea091bc8b785dc2d6647.

Signed-off-by: Peter Müller <peter.mueller@ipfire.org>
---
 config/kernel/kernel.config.x86_64-ipfire | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)
  

Comments

Michael Tremer Dec. 27, 2022, 11:26 a.m. UTC | #1
Hello,

I disagree for reasons that I pointed out in the cover letter.

Xz is probably doing a fine job here.

If other people think we have enough space, I obviously don’t have a problem at all with Zstandard.

> On 26 Dec 2022, at 20:29, Peter Müller <peter.mueller@ipfire.org> wrote:
> 
> Zstandard is an ideal compression algorithm with great performance for
> this purpose. The kernel is still able to load firmware compressed using
> XZ and ramdisks compressed with various other algorirthms.
> 
> Backported from IPFire 3.x as a3776d8aee67369dcff8ea091bc8b785dc2d6647.
> 
> Signed-off-by: Peter Müller <peter.mueller@ipfire.org>
> ---
> config/kernel/kernel.config.x86_64-ipfire | 8 ++++----
> 1 file changed, 4 insertions(+), 4 deletions(-)
> 
> diff --git a/config/kernel/kernel.config.x86_64-ipfire b/config/kernel/kernel.config.x86_64-ipfire
> index 085005dbc..763c7c842 100644
> --- a/config/kernel/kernel.config.x86_64-ipfire
> +++ b/config/kernel/kernel.config.x86_64-ipfire
> @@ -41,10 +41,10 @@ CONFIG_HAVE_KERNEL_ZSTD=y
> # CONFIG_KERNEL_GZIP is not set
> # CONFIG_KERNEL_BZIP2 is not set
> # CONFIG_KERNEL_LZMA is not set
> -CONFIG_KERNEL_XZ=y
> +# CONFIG_KERNEL_XZ is not set
> # CONFIG_KERNEL_LZO is not set
> # CONFIG_KERNEL_LZ4 is not set
> -# CONFIG_KERNEL_ZSTD is not set
> +CONFIG_KERNEL_ZSTD=y
> CONFIG_DEFAULT_INIT=""
> CONFIG_DEFAULT_HOSTNAME="(none)"
> CONFIG_SWAP=y
> @@ -807,8 +807,8 @@ CONFIG_MODULE_SIG_SHA512=y
> CONFIG_MODULE_SIG_HASH="sha512"
> # CONFIG_MODULE_COMPRESS_NONE is not set
> # CONFIG_MODULE_COMPRESS_GZIP is not set
> -CONFIG_MODULE_COMPRESS_XZ=y
> -# CONFIG_MODULE_COMPRESS_ZSTD is not set
> +# CONFIG_MODULE_COMPRESS_XZ is not set
> +CONFIG_MODULE_COMPRESS_ZSTD=y
> # CONFIG_MODULE_ALLOW_MISSING_NAMESPACE_IMPORTS is not set
> CONFIG_MODPROBE_PATH="/sbin/modprobe"
> # CONFIG_TRIM_UNUSED_KSYMS is not set
> -- 
> 2.35.3
  

Patch

diff --git a/config/kernel/kernel.config.x86_64-ipfire b/config/kernel/kernel.config.x86_64-ipfire
index 085005dbc..763c7c842 100644
--- a/config/kernel/kernel.config.x86_64-ipfire
+++ b/config/kernel/kernel.config.x86_64-ipfire
@@ -41,10 +41,10 @@  CONFIG_HAVE_KERNEL_ZSTD=y
 # CONFIG_KERNEL_GZIP is not set
 # CONFIG_KERNEL_BZIP2 is not set
 # CONFIG_KERNEL_LZMA is not set
-CONFIG_KERNEL_XZ=y
+# CONFIG_KERNEL_XZ is not set
 # CONFIG_KERNEL_LZO is not set
 # CONFIG_KERNEL_LZ4 is not set
-# CONFIG_KERNEL_ZSTD is not set
+CONFIG_KERNEL_ZSTD=y
 CONFIG_DEFAULT_INIT=""
 CONFIG_DEFAULT_HOSTNAME="(none)"
 CONFIG_SWAP=y
@@ -807,8 +807,8 @@  CONFIG_MODULE_SIG_SHA512=y
 CONFIG_MODULE_SIG_HASH="sha512"
 # CONFIG_MODULE_COMPRESS_NONE is not set
 # CONFIG_MODULE_COMPRESS_GZIP is not set
-CONFIG_MODULE_COMPRESS_XZ=y
-# CONFIG_MODULE_COMPRESS_ZSTD is not set
+# CONFIG_MODULE_COMPRESS_XZ is not set
+CONFIG_MODULE_COMPRESS_ZSTD=y
 # CONFIG_MODULE_ALLOW_MISSING_NAMESPACE_IMPORTS is not set
 CONFIG_MODPROBE_PATH="/sbin/modprobe"
 # CONFIG_TRIM_UNUSED_KSYMS is not set