diff options
author | Chao Yu <yuchao0@huawei.com> | 2019-04-26 11:57:54 +0200 |
---|---|---|
committer | Jaegeuk Kim <jaegeuk@kernel.org> | 2019-05-09 06:23:13 +0200 |
commit | 896285ad02ea1e8a7cedbceb5e5656335b7ae563 (patch) | |
tree | 5758d2c5e4e19d09e4e6749057802e51e2f01686 | |
parent | f2fs: remove redundant check in f2fs_file_write_iter() (diff) | |
download | linux-896285ad02ea1e8a7cedbceb5e5656335b7ae563.tar.xz linux-896285ad02ea1e8a7cedbceb5e5656335b7ae563.zip |
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>
-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 */ |