diff options
author | Mike Pagano <mpagano@gentoo.org> | 2023-10-22 18:54:29 -0400 |
---|---|---|
committer | Mike Pagano <mpagano@gentoo.org> | 2023-10-22 18:54:29 -0400 |
commit | a9fb7925f25b937d7a2686fdcea4eeb4cb71d69a (patch) | |
tree | 8a6aef77159c58fbf1a4ddd292f89ae90ad1eef3 | |
parent | Linux patch 5.15.136 (diff) | |
download | linux-patches-a9fb7925f25b937d7a2686fdcea4eeb4cb71d69a.tar.gz linux-patches-a9fb7925f25b937d7a2686fdcea4eeb4cb71d69a.tar.bz2 linux-patches-a9fb7925f25b937d7a2686fdcea4eeb4cb71d69a.zip |
kbuild: Use CRC32 and a 1MiB dictionary for XZ compressed modules
Signed-off-by: Mike Pagano <mpagano@gentoo.org>
-rw-r--r-- | 0000_README | 4 | ||||
-rw-r--r-- | 2950_kbuild-CRC32-1MB-dict-xz-modules.patch | 38 |
2 files changed, 42 insertions, 0 deletions
diff --git a/0000_README b/0000_README index 7d9d887c..bfd3d42d 100644 --- a/0000_README +++ b/0000_README @@ -615,6 +615,10 @@ Patch: 2940_gcc-plugins-drop-std-gnu-plus-plus-to-fix-GCC-13-build.patch From: https://lore.kernel.org/all/20230201230009.2252783-1-sam@gentoo.org/ Desc: gcc-plugins: drop -std=gnu++11 to fix GCC 13 build +Patch: 2950_kbuild-CRC32-1MB-dict-xz-modules.patch +From: https://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild.git/commit/?h=kbuild&id=fbf5892df21a8ccfcb2fda0fd65bc3169c89ed28 +Desc: kbuild: Use CRC32 and a 1MiB dictionary for XZ compressed modules + Patch: 2945_handle-gcc-14-last-stmt-rename.patch From: https://lore.kernel.org/all/20230811060545.never.564-kees@kernel.org/#Z31scripts:gcc-plugins:gcc-common.h Desc: gcc-plugins: Rename last_stmt() for GCC 14+ diff --git a/2950_kbuild-CRC32-1MB-dict-xz-modules.patch b/2950_kbuild-CRC32-1MB-dict-xz-modules.patch new file mode 100644 index 00000000..32090343 --- /dev/null +++ b/2950_kbuild-CRC32-1MB-dict-xz-modules.patch @@ -0,0 +1,38 @@ +From fbf5892df21a8ccfcb2fda0fd65bc3169c89ed28 Mon Sep 17 00:00:00 2001 +From: Martin Nybo Andersen <tweek@tweek.dk> +Date: Fri, 15 Sep 2023 12:15:39 +0200 +Subject: kbuild: Use CRC32 and a 1MiB dictionary for XZ compressed modules + +Kmod is now (since kmod commit 09c9f8c5df04 ("libkmod: Use kernel +decompression when available")) using the kernel decompressor, when +loading compressed modules. + +However, the kernel XZ decompressor is XZ Embedded, which doesn't +handle CRC64 and dictionaries larger than 1MiB. + +Use CRC32 and 1MiB dictionary when XZ compressing and installing +kernel modules. + +Link: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1050582 +Signed-off-by: Martin Nybo Andersen <tweek@tweek.dk> +Signed-off-by: Masahiro Yamada <masahiroy@kernel.org> +--- + scripts/Makefile.modinst | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/scripts/Makefile.modinst b/scripts/Makefile.modinst +index 346f5ec506823..0afd75472679f 100644 +--- a/scripts/Makefile.modinst ++++ b/scripts/Makefile.modinst +@@ -144,7 +144,7 @@ endif + quiet_cmd_gzip = GZIP $@ + cmd_gzip = $(KGZIP) -n -f $< + quiet_cmd_xz = XZ $@ +- cmd_xz = $(XZ) --lzma2=dict=2MiB -f $< ++ cmd_xz = $(XZ) --check=crc32 --lzma2=dict=1MiB -f $< + quiet_cmd_zstd = ZSTD $@ + cmd_zstd = $(ZSTD) -T0 --rm -f -q $< + +-- +cgit + |