summaryrefslogtreecommitdiff
path: root/fs/f2fs
diff options
context:
space:
mode:
authorJaegeuk Kim <jaegeuk@kernel.org>2016-09-23 21:29:00 +0300
committerJaegeuk Kim <jaegeuk@kernel.org>2016-10-01 03:34:29 +0300
commitbb5dada7d24778c6a315ded220ade20068305050 (patch)
tree656bc8d18b26858f4b7e3ab12830bbb2ac7a4659 /fs/f2fs
parentef68bf119788be4b468aa6d72362c8c5bbc3e073 (diff)
downloadlinux-bb5dada7d24778c6a315ded220ade20068305050.tar.xz
f2fs: remove dirty inode pages in error path
When getting EIO while handling orphan inodes, we can get some dirty node pages. Then, f2fs_write_node_pages() called by iput(node_inode) will try to flush node pages. But in this case, we should prevent to do that, since we will try again from the start. Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
Diffstat (limited to 'fs/f2fs')
-rw-r--r--fs/f2fs/super.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/f2fs/super.c b/fs/f2fs/super.c
index e7bb153f8104..fbded3858905 100644
--- a/fs/f2fs/super.c
+++ b/fs/f2fs/super.c
@@ -1892,6 +1892,7 @@ free_root_inode:
dput(sb->s_root);
sb->s_root = NULL;
free_node_inode:
+ truncate_inode_pages_final(NODE_MAPPING(sbi));
mutex_lock(&sbi->umount_mutex);
release_ino_entry(sbi, true);
f2fs_leave_shrinker(sbi);