f2fs: avoid needless inode updates
Subsystems (2)
Jaegeuk Kim
maintainerPATCH 1/1 f2fs: avoid needless inode updates
If i_size wan't change at all, we don't need to write inode during fsync.
Signed-off-by Jaegeuk Kim <[email protected]>
--- fs/f2fs/f2fs.h | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-)
fs/f2fs/f2fs.h +5 -5
@@ -2267,11 +2267,11 @@ static inline bool f2fs_skip_inode_update(struct inode *inode, int dsync)spin_unlock (&sbi->inode_lock[DIRTY_META ]);return ret; } -if (!is_inode_flag_set (inode,FI_AUTO_RECOVER ) || -file_keep_isize (inode) || -i_size_read (inode) &PAGE_MASK ) -return false; -return F2FS_I (inode)->last_disk_size ==i_size_read (inode); +if (F2FS_I (inode)->last_disk_size ==i_size_read (inode)) +return true; + +return is_inode_flag_set (inode,FI_AUTO_RECOVER ) && + !file_keep_isize (inode) && !(i_size_read (inode) &PAGE_MASK ); }static inline int f2fs_readonly (struct super_block *sb)
Signature · 1 line
2.14.0.rc1.383.gd1ce394fe2-goog
Jaegeuk Kim
maintainerPlease ignore this patch.
Thanks,
Quoted 30 lines · Jaegeuk Kim
If
i_sizewan't change at all, we don't need to write inode during fsync.Signed-off-by Jaegeuk Kim <[email protected]>--- fs/f2fs/f2fs.h | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-)fs/f2fs/f2fs.h +5
-5@@ -2267,11 +2267,11 @@ static inline bool f2fs_skip_inode_update(struct inode *inode, int dsync)spin_unlock (&sbi->inode_lock[DIRTY_META ]);return ret; } -if (!is_inode_flag_set (inode,FI_AUTO_RECOVER ) || -file_keep_isize (inode) || -i_size_read (inode) &PAGE_MASK ) -return false; -return F2FS_I (inode)->last_disk_size ==i_size_read (inode); +if (F2FS_I (inode)->last_disk_size ==i_size_read (inode)) +return true; + +return is_inode_flag_set (inode,FI_AUTO_RECOVER ) && + !file_keep_isize (inode) && !(i_size_read (inode) &PAGE_MASK ); }static inline int f2fs_readonly (struct super_block *sb)Signature · 1 line
2.14.0.rc1.383.gd1ce394fe2-goog