f2fs: avoid not to call remove_dirty_inode
authorJaegeuk Kim <jaegeuk@kernel.org>
Fri, 6 Jun 2014 18:05:03 +0000 (03:05 +0900)
committerJaegeuk Kim <jaegeuk@kernel.org>
Fri, 6 Jun 2014 18:18:36 +0000 (03:18 +0900)
commit86928f984e8b166fcd0c7c241501bc00f53eb623
tree15ac0986725b469160baae2ed0fb1d598a63e996
parent6fa1df533a93161c54c987bbffaadf03563aa78d
f2fs: avoid not to call remove_dirty_inode

There is an errorneous case during the recovery like below.

In recovery_dentry,
 1) dir = f2fs_iget();
 2) mark the dir with FI_DELAY_IPUT
 3) goto unmap_out

After the end of recovery routine, there is no dirty dentries so the dir cannot
be released by iput in remove_dirty_dir_inode.

This patch fixes such the bug case by handling the iget and iput in the
recovery_dentry procedure.

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