]> rtime.felk.cvut.cz Git - zynq/linux.git/commitdiff
f2fs: flush journal nat entries for nat_bits during unmount
authorJaegeuk Kim <jaegeuk@kernel.org>
Fri, 29 Jun 2018 02:34:40 +0000 (19:34 -0700)
committerJaegeuk Kim <jaegeuk@kernel.org>
Thu, 12 Jul 2018 02:54:51 +0000 (19:54 -0700)
Let's flush journal nat entries for speed up in the next run.

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

index 10643b11bd591d16f8b1e55ff5a8bdae648e5a10..b0267d3823b4a3cd205c80b9c56660a2132bfbec 100644 (file)
@@ -2582,6 +2582,13 @@ void f2fs_flush_nat_entries(struct f2fs_sb_info *sbi, struct cp_control *cpc)
        nid_t set_idx = 0;
        LIST_HEAD(sets);
 
+       /* during unmount, let's flush nat_bits before checking dirty_nat_cnt */
+       if (enabled_nat_bits(sbi, cpc)) {
+               down_write(&nm_i->nat_tree_lock);
+               remove_nats_in_journal(sbi);
+               up_write(&nm_i->nat_tree_lock);
+       }
+
        if (!nm_i->dirty_nat_cnt)
                return;