As 5kft reported in [1]:

set_compress_context() should set compress level into .i_compress_flag
for zstd as well as lz4hc, otherwise, zstd compressor will still use
default zstd compress level during compression, fix it.

[1] 
https://lore.kernel.org/linux-f2fs-devel/[email protected]/T/#u

Fixes: 3fde13f817e2 ("f2fs: compress: support compress level")
Reported-by: 5kft <[email protected]>
Signed-off-by: Chao Yu <[email protected]>
---
 fs/f2fs/f2fs.h | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/fs/f2fs/f2fs.h b/fs/f2fs/f2fs.h
index 5099652c260b..4bc89dd9487e 100644
--- a/fs/f2fs/f2fs.h
+++ b/fs/f2fs/f2fs.h
@@ -4160,7 +4160,8 @@ static inline void set_compress_context(struct inode 
*inode)
                                1 << COMPRESS_CHKSUM : 0;
        F2FS_I(inode)->i_cluster_size =
                        1 << F2FS_I(inode)->i_log_cluster_size;
-       if (F2FS_I(inode)->i_compress_algorithm == COMPRESS_LZ4 &&
+       if ((F2FS_I(inode)->i_compress_algorithm == COMPRESS_LZ4 ||
+               F2FS_I(inode)->i_compress_algorithm == COMPRESS_ZSTD) &&
                        F2FS_OPTION(sbi).compress_level)
                F2FS_I(inode)->i_compress_flag |=
                                F2FS_OPTION(sbi).compress_level <<
-- 
2.22.1



_______________________________________________
Linux-f2fs-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel

Reply via email to