f2fs: allow to clear F2FS_COMPR_FL flag
If regular inode has no compressed cluster, allow using 'chattr -c' to remove its compress flag, recovering it to a non-compressed file. Signed-off-by: Chao Yu <yuchao0@huawei.com> Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
This commit is contained in:
parent
3da4dc032f
commit
8aa412921f
1 changed files with 4 additions and 4 deletions
|
@ -1820,10 +1820,10 @@ static int f2fs_setflags_common(struct inode *inode, u32 iflags, u32 mask)
|
|||
}
|
||||
|
||||
if ((iflags ^ masked_flags) & F2FS_COMPR_FL) {
|
||||
if (S_ISREG(inode->i_mode) &&
|
||||
(masked_flags & F2FS_COMPR_FL || i_size_read(inode) ||
|
||||
F2FS_HAS_BLOCKS(inode)))
|
||||
return -EINVAL;
|
||||
if (S_ISREG(inode->i_mode) && (masked_flags & F2FS_COMPR_FL)) {
|
||||
if (f2fs_disable_compressed_file(inode))
|
||||
return -EINVAL;
|
||||
}
|
||||
if (iflags & F2FS_NOCOMP_FL)
|
||||
return -EINVAL;
|
||||
if (iflags & F2FS_COMPR_FL) {
|
||||
|
|
Loading…
Reference in a new issue