f2fs: fix incorrect free inode count in ->statfs
Chao Yu
maintainerPATCH 1/1 f2fs: fix incorrect free inode count in ->statfs
From: Chao Yu <[email protected]>
While calculating inode count that we can create at most in the left space, we should consider space which data/node blocks occupied, since we create data/node mixly in main area. So fix the wrong calculation in ->statfs.
Signed-off-by Chao Yu <[email protected]>
--- fs/f2fs/super.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
fs/f2fs/super.c +2 -1
@@ -852,7 +852,8 @@ static int f2fs_statfs(struct dentry *dentry, struct kstatfs *buf) buf->f_bavail = user_block_count -valid_user_blocks (sbi); buf->f_files = sbi->total_node_count -F2FS_RESERVED_NODE_NUM ; - buf->f_ffree = buf->f_files -valid_inode_count (sbi); + buf->f_ffree =min (buf->f_files -valid_node_count (sbi), + buf->f_bavail); buf->f_namelen =F2FS_NAME_LEN ; buf->f_fsid.val[0 ] = (u32 )id;
Signature · 1 line
2.10.1