f2fs: avoid frequent costly fsck triggers
authorJaegeuk Kim <jaegeuk@kernel.org>
Wed, 28 Nov 2018 07:28:37 +0000 (23:28 -0800)
committerJaegeuk Kim <jaegeuk@kernel.org>
Wed, 28 Nov 2018 08:16:25 +0000 (00:16 -0800)
If we want to re-enable nat_bits, we rely on fsck which requires full scan
of directory tree. Let's do that by regular fsck or unclean shutdown.

Reviewed-by: Chao Yu <yuchao0@huawei.com>
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
fs/f2fs/f2fs.h

index c28a9d1..aa50023 100644 (file)
@@ -1621,7 +1621,11 @@ static inline void disable_nat_bits(struct f2fs_sb_info *sbi, bool lock)
 {
        unsigned long flags;
 
-       set_sbi_flag(sbi, SBI_NEED_FSCK);
+       /*
+        * In order to re-enable nat_bits we need to call fsck.f2fs by
+        * set_sbi_flag(sbi, SBI_NEED_FSCK). But it may give huge cost,
+        * so let's rely on regular fsck or unclean shutdown.
+        */
 
        if (lock)
                spin_lock_irqsave(&sbi->cp_lock, flags);