]> git.karo-electronics.de Git - linux-beck.git/commitdiff
f2fs: fix wrong AUTO_RECOVER condition
authorJaegeuk Kim <jaegeuk@kernel.org>
Thu, 17 Nov 2016 02:53:16 +0000 (18:53 -0800)
committerJaegeuk Kim <jaegeuk@kernel.org>
Fri, 25 Nov 2016 18:16:05 +0000 (10:16 -0800)
If i_size is not aligned to the f2fs's block size, we should not skip inode
update during fsync.

Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
fs/f2fs/f2fs.h

index 3f91cb53d545863d3a8dfcd1363b91c36b8bc685..62383d20a69f4c1b52c1f9cc7e6e32bbdc705346 100644 (file)
@@ -1721,7 +1721,8 @@ 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))
+       if (!is_inode_flag_set(inode, FI_AUTO_RECOVER) ||
+                       i_size_read(inode) & PAGE_MASK)
                return false;
        return F2FS_I(inode)->last_disk_size == i_size_read(inode);
 }