f2fs: compress: fix to avoid fragment w/ OPU during f2fs_ioc_compress_file()
If file has both cold and compress flag, during f2fs_ioc_compress_file(), f2fs will trigger IPU for non-compress cluster and OPU for compress cluster, so that, data of the file may be fragmented. Fix it by always triggering OPU for IOs from user mode compression. Signed-off-by: Chao Yu <chao@kernel.org> Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
This commit is contained in:
parent
a4639380bb
commit
943f7c6f98
@ -2665,6 +2665,11 @@ bool f2fs_should_update_outplace(struct inode *inode, struct f2fs_io_info *fio)
|
||||
return true;
|
||||
if (f2fs_is_atomic_file(inode))
|
||||
return true;
|
||||
/* rewrite low ratio compress data w/ OPU mode to avoid fragmentation */
|
||||
if (f2fs_compressed_file(inode) &&
|
||||
F2FS_OPTION(sbi).compress_mode == COMPR_MODE_USER &&
|
||||
is_inode_flag_set(inode, FI_ENABLE_COMPRESS))
|
||||
return true;
|
||||
|
||||
/* swap file is migrating in aligned write mode */
|
||||
if (is_inode_flag_set(inode, FI_ALIGNED_WRITE))
|
||||
|
Loading…
Reference in New Issue
Block a user