summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--fs/f2fs/f2fs.h1
-rw-r--r--fs/f2fs/inode.c3
-rw-r--r--fs/f2fs/namei.c4
3 files changed, 6 insertions, 2 deletions
diff --git a/fs/f2fs/f2fs.h b/fs/f2fs/f2fs.h
index e9299463be20..1b2b0acbc83d 100644
--- a/fs/f2fs/f2fs.h
+++ b/fs/f2fs/f2fs.h
@@ -2150,6 +2150,7 @@ static inline void __mark_inode_dirty_flag(struct inode *inode,
2150 case FI_INLINE_XATTR: 2150 case FI_INLINE_XATTR:
2151 case FI_INLINE_DATA: 2151 case FI_INLINE_DATA:
2152 case FI_INLINE_DENTRY: 2152 case FI_INLINE_DENTRY:
2153 case FI_NEW_INODE:
2153 if (set) 2154 if (set)
2154 return; 2155 return;
2155 case FI_DATA_EXIST: 2156 case FI_DATA_EXIST:
diff --git a/fs/f2fs/inode.c b/fs/f2fs/inode.c
index 234322889e65..1dc77a40d0ad 100644
--- a/fs/f2fs/inode.c
+++ b/fs/f2fs/inode.c
@@ -22,6 +22,9 @@
22 22
23void f2fs_mark_inode_dirty_sync(struct inode *inode, bool sync) 23void f2fs_mark_inode_dirty_sync(struct inode *inode, bool sync)
24{ 24{
25 if (is_inode_flag_set(inode, FI_NEW_INODE))
26 return;
27
25 if (f2fs_inode_dirtied(inode, sync)) 28 if (f2fs_inode_dirtied(inode, sync))
26 return; 29 return;
27 30
diff --git a/fs/f2fs/namei.c b/fs/f2fs/namei.c
index a885c6e659f8..3ee97ba9d2d7 100644
--- a/fs/f2fs/namei.c
+++ b/fs/f2fs/namei.c
@@ -74,12 +74,12 @@ static struct inode *f2fs_new_inode(struct inode *dir, umode_t mode)
74 if (err) 74 if (err)
75 goto fail_drop; 75 goto fail_drop;
76 76
77 set_inode_flag(inode, FI_NEW_INODE);
78
77 /* If the directory encrypted, then we should encrypt the inode. */ 79 /* If the directory encrypted, then we should encrypt the inode. */
78 if (f2fs_encrypted_inode(dir) && f2fs_may_encrypt(inode)) 80 if (f2fs_encrypted_inode(dir) && f2fs_may_encrypt(inode))
79 f2fs_set_encrypted_inode(inode); 81 f2fs_set_encrypted_inode(inode);
80 82
81 set_inode_flag(inode, FI_NEW_INODE);
82
83 if (f2fs_sb_has_extra_attr(sbi->sb)) { 83 if (f2fs_sb_has_extra_attr(sbi->sb)) {
84 set_inode_flag(inode, FI_EXTRA_ATTR); 84 set_inode_flag(inode, FI_EXTRA_ATTR);
85 F2FS_I(inode)->i_extra_isize = F2FS_TOTAL_EXTRA_ATTR_SIZE; 85 F2FS_I(inode)->i_extra_isize = F2FS_TOTAL_EXTRA_ATTR_SIZE;