linux/fs/f2fs
Chao Yu 3fde13f817 f2fs: compress: support compress level
Expand 'compress_algorithm' mount option to accept parameter as format of
<algorithm>:<level>, by this way, it gives a way to allow user to do more
specified config on lz4 and zstd compression level, then f2fs compression
can provide higher compress ratio.

In order to set compress level for lz4 algorithm, it needs to set
CONFIG_LZ4HC_COMPRESS and CONFIG_F2FS_FS_LZ4HC config to enable lz4hc
compress algorithm.

CR and performance number on lz4/lz4hc algorithm:

dd if=enwik9 of=compressed_file conv=fsync

Original blocks:	244382

			lz4			lz4hc-9
compressed blocks	170647			163270
compress ratio		69.8%			66.8%
speed			16.4207 s, 60.9 MB/s	26.7299 s, 37.4 MB/s

compress ratio = after / before

Signed-off-by: Chao Yu <yuchao0@huawei.com>
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
2021-01-27 15:20:02 -08:00
..
acl.c f2fs: enhance to update i_mode and acl atomically in f2fs_setattr() 2021-01-27 15:20:00 -08:00
acl.h f2fs: Use the correct style for SPDX License Identifier 2020-05-08 06:55:55 -07:00
checkpoint.c f2fs-for-5.11-rc1 2020-12-17 11:18:00 -08:00
compress.c f2fs: compress: support compress level 2021-01-27 15:20:02 -08:00
compress.h f2fs: compress: fix compression chksum 2020-12-10 09:13:53 -08:00
data.c f2fs: relocate f2fs_precache_extents() 2021-01-27 15:20:01 -08:00
debug.c f2fs: avoid race condition for shrinker count 2020-12-03 00:59:26 -08:00
dir.c f2fs-for-5.11-rc1 2020-12-17 11:18:00 -08:00
extent_cache.c f2fs: support 64-bits key in f2fs rb-tree node entry 2020-09-10 14:03:30 -07:00
f2fs.h f2fs: compress: support compress level 2021-01-27 15:20:02 -08:00
file.c f2fs: enforce the immutable flag on open files 2021-01-27 15:20:01 -08:00
gc.c f2fs: change to use rwsem for cp_mutex 2020-12-02 22:00:21 -08:00
gc.h f2fs: support age threshold based garbage collection 2020-09-11 11:11:15 -07:00
hash.c f2fs: Handle casefolding with Encryption 2020-12-02 22:00:21 -08:00
inline.c f2fs: inline: fix wrong inline inode stat 2020-12-08 14:25:41 -08:00
inode.c f2fs: compress: support chksum 2020-12-02 22:00:22 -08:00
Kconfig f2fs: compress: support compress level 2021-01-27 15:20:02 -08:00
Makefile f2fs: support data compression 2020-01-17 16:48:07 -08:00
namei.c fscrypt: Have filesystems handle their d_ops 2020-12-02 22:00:21 -08:00
node.c f2fs: Replace expression with offsetof() 2021-01-27 15:20:00 -08:00
node.h f2fs: avoid race condition for shrinker count 2020-12-03 00:59:26 -08:00
recovery.c f2fs: change to use rwsem for cp_mutex 2020-12-02 22:00:21 -08:00
segment.c f2fs: add compress_mode mount option 2020-12-03 00:11:57 -08:00
segment.h f2fs: handle unallocated section and zone on pinned/atgc 2021-01-27 15:19:59 -08:00
shrinker.c f2fs: avoid race condition for shrinker count 2020-12-03 00:59:26 -08:00
super.c f2fs: compress: support compress level 2021-01-27 15:20:02 -08:00
sysfs.c f2fs-for-5.11-rc1 2020-12-17 11:18:00 -08:00
trace.c f2fs: do not use mutex lock in atomic context 2019-03-05 19:58:06 -08:00
trace.h f2fs: Use the correct style for SPDX License Identifier 2020-05-08 06:55:55 -07:00
verity.c mm/readahead: make page_cache_ra_unbounded take a readahead_control 2020-10-16 11:11:16 -07:00
xattr.c f2fs: enhance to update i_mode and acl atomically in f2fs_setattr() 2021-01-27 15:20:00 -08:00
xattr.h f2fs: code cleanup by removing ifdef macro surrounding 2020-05-26 18:56:10 -07:00