aboutsummaryrefslogtreecommitdiffstats
path: root/fs/f2fs/checkpoint.c
diff options
context:
space:
mode:
Diffstat (limited to 'fs/f2fs/checkpoint.c')
-rw-r--r--fs/f2fs/checkpoint.c10
1 files changed, 4 insertions, 6 deletions
diff --git a/fs/f2fs/checkpoint.c b/fs/f2fs/checkpoint.c
index 2887c196b0a2..2b6fc131e2ce 100644
--- a/fs/f2fs/checkpoint.c
+++ b/fs/f2fs/checkpoint.c
@@ -539,7 +539,7 @@ retry:
539/* 539/*
540 * Freeze all the FS-operations for checkpoint. 540 * Freeze all the FS-operations for checkpoint.
541 */ 541 */
542void block_operations(struct f2fs_sb_info *sbi) 542static void block_operations(struct f2fs_sb_info *sbi)
543{ 543{
544 int t; 544 int t;
545 struct writeback_control wbc = { 545 struct writeback_control wbc = {
@@ -722,15 +722,13 @@ static void do_checkpoint(struct f2fs_sb_info *sbi, bool is_umount)
722/* 722/*
723 * We guarantee that this checkpoint procedure should not fail. 723 * We guarantee that this checkpoint procedure should not fail.
724 */ 724 */
725void write_checkpoint(struct f2fs_sb_info *sbi, bool blocked, bool is_umount) 725void write_checkpoint(struct f2fs_sb_info *sbi, bool is_umount)
726{ 726{
727 struct f2fs_checkpoint *ckpt = F2FS_CKPT(sbi); 727 struct f2fs_checkpoint *ckpt = F2FS_CKPT(sbi);
728 unsigned long long ckpt_ver; 728 unsigned long long ckpt_ver;
729 729
730 if (!blocked) { 730 mutex_lock(&sbi->cp_mutex);
731 mutex_lock(&sbi->cp_mutex); 731 block_operations(sbi);
732 block_operations(sbi);
733 }
734 732
735 f2fs_submit_bio(sbi, DATA, true); 733 f2fs_submit_bio(sbi, DATA, true);
736 f2fs_submit_bio(sbi, NODE, true); 734 f2fs_submit_bio(sbi, NODE, true);