summaryrefslogtreecommitdiffstats
path: root/fs/f2fs/segment.c
diff options
context:
space:
mode:
authorJaegeuk Kim <jaegeuk@kernel.org>2019-01-24 17:48:38 -0800
committerJaegeuk Kim <jaegeuk@kernel.org>2019-02-15 20:59:37 -0800
commitdb610a640eeeb268c36a4558414f28e1c269433e (patch)
tree66da940982008de4609356befdc2e16bfaaeecef /fs/f2fs/segment.c
parent03f2c02d8be76d2080c174cd65d2dfcbbf783708 (diff)
downloadlinux-db610a640eeeb268c36a4558414f28e1c269433e.tar.gz
linux-db610a640eeeb268c36a4558414f28e1c269433e.tar.bz2
linux-db610a640eeeb268c36a4558414f28e1c269433e.zip
f2fs: add quick mode of checkpoint=disable for QA
This mode returns mount() quickly with EAGAIN. We can trigger this by shutdown(F2FS_GOING_DOWN_NEED_FSCK). Reviewed-by: Chao Yu <yuchao0@huawei.com> Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
Diffstat (limited to 'fs/f2fs/segment.c')
-rw-r--r--fs/f2fs/segment.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/fs/f2fs/segment.c b/fs/f2fs/segment.c
index 5b2b9be6f28d..342b720fb4db 100644
--- a/fs/f2fs/segment.c
+++ b/fs/f2fs/segment.c
@@ -868,6 +868,9 @@ int f2fs_disable_cp_again(struct f2fs_sb_info *sbi)
if (holes[DATA] > ovp || holes[NODE] > ovp)
return -EAGAIN;
+ if (is_sbi_flag_set(sbi, SBI_CP_DISABLED_QUICK) &&
+ dirty_segments(sbi) > overprovision_segments(sbi))
+ return -EAGAIN;
return 0;
}