f2fs: don't convert inline inode when inline_data option is disable
authorChao Yu <chao2.yu@samsung.com>
Wed, 23 Dec 2015 09:51:35 +0000 (17:51 +0800)
committerJaegeuk Kim <jaegeuk@kernel.org>
Wed, 30 Dec 2015 18:14:10 +0000 (10:14 -0800)
If inline_data option is disable, when truncating an inline inode with
size which is not exceed maxinum inline size, we should not convert
inline inode to regular one to avoid the overhead of synchronizing
conversion.

Signed-off-by: Chao Yu <chao2.yu@samsung.com>
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
fs/f2fs/inline.c
fs/f2fs/namei.c

index c24e5d93720d45aa4212b574c5560015c7ecb063..5ffbd169b719a115ae0c65c08f2750f66b323228 100644 (file)
@@ -16,9 +16,6 @@
 
 bool f2fs_may_inline_data(struct inode *inode)
 {
-       if (!test_opt(F2FS_I_SB(inode), INLINE_DATA))
-               return false;
-
        if (f2fs_is_atomic_file(inode))
                return false;
 
index 4e27c5c4b05cba46a46e95e5003df2b3de00e2cb..e439f32d31e6e95274a9aacf8ad286543d00fe83 100644 (file)
@@ -60,7 +60,7 @@ static struct inode *f2fs_new_inode(struct inode *dir, umode_t mode)
        if (f2fs_encrypted_inode(dir) && f2fs_may_encrypt(inode))
                f2fs_set_encrypted_inode(inode);
 
-       if (f2fs_may_inline_data(inode))
+       if (test_opt(sbi, INLINE_DATA) && f2fs_may_inline_data(inode))
                set_inode_flag(F2FS_I(inode), FI_INLINE_DATA);
        if (f2fs_may_inline_dentry(inode))
                set_inode_flag(F2FS_I(inode), FI_INLINE_DENTRY);