kbuild: add support for zstd compressed modules
kmod 28 supports modules compressed in zstd format so let's add this possibility to kernel. Signed-off-by: Piotr Gorski <lucjan.lucjanov@gmail.com> Reviewed-by: Oleksandr Natalenko <oleksandr@natalenko.name> Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
This commit is contained in:
Родитель
d4bbe94209
Коммит
c3d7ef377e
|
@ -2242,7 +2242,7 @@ choice
|
|||
|
||||
Please note that the tool used to load modules needs to support the
|
||||
corresponding algorithm. module-init-tools MAY support gzip, and kmod
|
||||
MAY support gzip and xz.
|
||||
MAY support gzip, xz and zstd.
|
||||
|
||||
Your build system needs to provide the appropriate compression tool
|
||||
to compress the modules.
|
||||
|
@ -2267,6 +2267,12 @@ config MODULE_COMPRESS_XZ
|
|||
Compress modules with XZ. The installed modules are suffixed
|
||||
with .ko.xz.
|
||||
|
||||
config MODULE_COMPRESS_ZSTD
|
||||
bool "ZSTD"
|
||||
help
|
||||
Compress modules with ZSTD. The installed modules are suffixed
|
||||
with .ko.zst.
|
||||
|
||||
endchoice
|
||||
|
||||
config MODULE_ALLOW_MISSING_NAMESPACE_IMPORTS
|
||||
|
|
|
@ -21,6 +21,7 @@ endif
|
|||
suffix-y :=
|
||||
suffix-$(CONFIG_MODULE_COMPRESS_GZIP) := .gz
|
||||
suffix-$(CONFIG_MODULE_COMPRESS_XZ) := .xz
|
||||
suffix-$(CONFIG_MODULE_COMPRESS_ZSTD) := .zst
|
||||
|
||||
modules := $(patsubst $(extmod_prefix)%, $(dst)/%$(suffix-y), $(modules))
|
||||
|
||||
|
@ -95,6 +96,8 @@ quiet_cmd_gzip = GZIP $@
|
|||
cmd_gzip = $(KGZIP) -n -f $<
|
||||
quiet_cmd_xz = XZ $@
|
||||
cmd_xz = $(XZ) --lzma2=dict=2MiB -f $<
|
||||
quiet_cmd_zstd = ZSTD $@
|
||||
cmd_zstd = $(ZSTD) -T0 --rm -f -q $<
|
||||
|
||||
$(dst)/%.ko.gz: $(dst)/%.ko FORCE
|
||||
$(call cmd,gzip)
|
||||
|
@ -102,6 +105,9 @@ $(dst)/%.ko.gz: $(dst)/%.ko FORCE
|
|||
$(dst)/%.ko.xz: $(dst)/%.ko FORCE
|
||||
$(call cmd,xz)
|
||||
|
||||
$(dst)/%.ko.zst: $(dst)/%.ko FORCE
|
||||
$(call cmd,zstd)
|
||||
|
||||
PHONY += FORCE
|
||||
FORCE:
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче