f2fs: count inline_xx in do_read_inode
authorJaegeuk Kim <jaegeuk@kernel.org>
Fri, 5 Dec 2014 18:51:50 +0000 (10:51 -0800)
committerJaegeuk Kim <jaegeuk@kernel.org>
Mon, 8 Dec 2014 18:35:13 +0000 (10:35 -0800)
In do_read_inode, if we failed __recover_inline_status, the inode has inline
flag without increasing its count.
Later, f2fs_evict_inode will decrease the count, which causes -1.

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

index 9fe110ef8cc4a43a848952f42512f9c56b257112..196cc7843aaff5f7073e1f5d7d7934a61eea8d67 100644 (file)
@@ -148,6 +148,10 @@ static int do_read_inode(struct inode *inode)
        __get_inode_rdev(inode, ri);
 
        f2fs_put_page(node_page, 1);
+
+       stat_inc_inline_inode(inode);
+       stat_inc_inline_dir(inode);
+
        return err;
 }
 
@@ -199,8 +203,6 @@ make_now:
                goto bad_inode;
        }
        unlock_new_inode(inode);
-       stat_inc_inline_inode(inode);
-       stat_inc_inline_dir(inode);
        trace_f2fs_iget(inode);
        return inode;