• Chao Yu's avatar
    f2fs: compress: support compress level · 3fde13f8
    Chao Yu authored
    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: default avatarChao Yu <yuchao0@huawei.com>
    Signed-off-by: default avatarJaegeuk Kim <jaegeuk@kernel.org>
    3fde13f8
compress.c 38.9 KB