diff options
author | Chao Yu <yuchao0@huawei.com> | 2019-04-26 17:57:54 +0800 |
---|---|---|
committer | Jaegeuk Kim <jaegeuk@kernel.org> | 2019-05-08 21:23:13 -0700 |
commit | 896285ad02ea1e8a7cedbceb5e5656335b7ae563 (patch) | |
tree | 5758d2c5e4e19d09e4e6749057802e51e2f01686 /fs | |
parent | d5d5f0c0c9160f00dd0729ebd3c46e31acc26672 (diff) | |
download | linux-896285ad02ea1e8a7cedbceb5e5656335b7ae563.tar.bz2 |
f2fs: fix to handle error in f2fs_disable_checkpoint()
In f2fs_disable_checkpoint(), it needs to detect and propagate error
number returned from f2fs_write_checkpoint().
Signed-off-by: Chao Yu <yuchao0@huawei.com>
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
Diffstat (limited to 'fs')
-rw-r--r-- | fs/f2fs/super.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/fs/f2fs/super.c b/fs/f2fs/super.c index 4f8e9ab48b26..fe075aa12893 100644 --- a/fs/f2fs/super.c +++ b/fs/f2fs/super.c @@ -1504,9 +1504,12 @@ static int f2fs_disable_checkpoint(struct f2fs_sb_info *sbi) mutex_lock(&sbi->gc_mutex); cpc.reason = CP_PAUSE; set_sbi_flag(sbi, SBI_CP_DISABLED); - f2fs_write_checkpoint(sbi, &cpc); + err = f2fs_write_checkpoint(sbi, &cpc); + if (err) + goto out_unlock; sbi->unusable_block_count = 0; +out_unlock: mutex_unlock(&sbi->gc_mutex); restore_flag: sbi->sb->s_flags = s_flags; /* Restore MS_RDONLY status */ |