[15/21] linux: Compress the kernel, modules and firmware using Zstandard
Commit Message
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
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
@@ -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