If there remains some unwritten blocks from the recovery, we should not call
iput on that directory inode.
Otherwise, we can loose some dentry blocks after the recovery.
Signed-off-by: Jaegeuk Kim <jaegeuk.kim@samsung.com>
                return;
 
        spin_lock(&sbi->dir_inode_lock);
-       if (atomic_read(&F2FS_I(inode)->dirty_dents))
-               goto out;
+       if (atomic_read(&F2FS_I(inode)->dirty_dents)) {
+               spin_unlock(&sbi->dir_inode_lock);
+               return;
+       }
 
        list_for_each(this, head) {
                struct dir_inode_entry *entry;
                        break;
                }
        }
-out:
        spin_unlock(&sbi->dir_inode_lock);
 
        /* Only from the recovery routine */