diff options
author | Geliang Tang <geliangtang@gmail.com> | 2018-08-01 19:23:37 +0800 |
---|---|---|
committer | Kees Cook <keescook@chromium.org> | 2018-08-03 18:12:18 -0700 |
commit | 1021bcf44d0e876b10f8739594ad7e6e9c746026 (patch) | |
tree | 3f21bc5e070760cfd7e3bf9f229676e76d64f90e /fs/pstore/platform.c | |
parent | 7daf201d7fe8334e2d2364d4e8ed3394ec9af819 (diff) |
pstore: add zstd compression support
This patch added the 6th compression algorithm support for pstore: zstd.
Signed-off-by: Geliang Tang <geliangtang@gmail.com>
Signed-off-by: Kees Cook <keescook@chromium.org>
Diffstat (limited to 'fs/pstore/platform.c')
-rw-r--r-- | fs/pstore/platform.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/fs/pstore/platform.c b/fs/pstore/platform.c index c238ab8ba31d..15e99d5a681d 100644 --- a/fs/pstore/platform.c +++ b/fs/pstore/platform.c @@ -34,6 +34,9 @@ #if IS_ENABLED(CONFIG_PSTORE_LZ4_COMPRESS) || IS_ENABLED(CONFIG_PSTORE_LZ4HC_COMPRESS) #include <linux/lz4.h> #endif +#if IS_ENABLED(CONFIG_PSTORE_ZSTD_COMPRESS) +#include <linux/zstd.h> +#endif #include <linux/crypto.h> #include <linux/string.h> #include <linux/timer.h> @@ -192,6 +195,13 @@ static int zbufsize_842(size_t size) } #endif +#if IS_ENABLED(CONFIG_PSTORE_ZSTD_COMPRESS) +static int zbufsize_zstd(size_t size) +{ + return ZSTD_compressBound(size); +} +#endif + static const struct pstore_zbackend *zbackend __ro_after_init; static const struct pstore_zbackend zbackends[] = { @@ -225,6 +235,12 @@ static const struct pstore_zbackend zbackends[] = { .name = "842", }, #endif +#if IS_ENABLED(CONFIG_PSTORE_ZSTD_COMPRESS) + { + .zbufsize = zbufsize_zstd, + .name = "zstd", + }, +#endif { } }; |