summaryrefslogtreecommitdiff
path: root/eclass
diff options
context:
space:
mode:
authorMichał Górny <mgorny@gentoo.org>2023-12-28 09:51:02 +0100
committerMichał Górny <mgorny@gentoo.org>2023-12-30 17:19:09 +0100
commiteaefe0f676c685a0e52682eb125db34a1f54da9b (patch)
tree53b9e6745b4d7599c449523215b8828e94e1820d /eclass
parentlinux-mod-r1.eclass: Add USE=modules-compress (diff)
downloadgentoo-eaefe0f676c685a0e52682eb125db34a1f54da9b.tar.gz
gentoo-eaefe0f676c685a0e52682eb125db34a1f54da9b.tar.bz2
gentoo-eaefe0f676c685a0e52682eb125db34a1f54da9b.zip
linux-mod.eclass: Fix xz compression options
Match xz compression options to the ones used by the kernel, as the xz decoder used by the kernel supports only a subset of the xz format. Bug: https://bugs.gentoo.org/920837 Signed-off-by: Michał Górny <mgorny@gentoo.org>
Diffstat (limited to 'eclass')
-rw-r--r--eclass/linux-mod.eclass4
1 files changed, 3 insertions, 1 deletions
diff --git a/eclass/linux-mod.eclass b/eclass/linux-mod.eclass
index 26d8cac47ef0..c71ace53aa00 100644
--- a/eclass/linux-mod.eclass
+++ b/eclass/linux-mod.eclass
@@ -689,7 +689,9 @@ linux-mod_src_install() {
# and similarly compress the module being built if != NONE.
if linux_chkconfig_present MODULE_COMPRESS_XZ; then
- xz -T$(makeopts_jobs) --memlimit-compress=50% -q ${modulename}.${KV_OBJ} || die "Compressing ${modulename}.${KV_OBJ} with xz failed"
+ # match kernel compression options for compatibility
+ # https://bugs.gentoo.org/920837
+ xz -T$(makeopts_jobs) --memlimit-compress=50% -q --check=crc32 --lzma2=dict=1MiB ${modulename}.${KV_OBJ} || die "Compressing ${modulename}.${KV_OBJ} with xz failed"
doins ${modulename}.${KV_OBJ}.xz
KV_OBJ_COMPRESS_EXT=".xz"
elif linux_chkconfig_present MODULE_COMPRESS_GZIP; then