f2fs: don't skip checkpoint if there is no dirty node pages
authorJaegeuk Kim <jaegeuk@kernel.org>
Tue, 19 Aug 2014 16:13:01 +0000 (09:13 -0700)
committerJaegeuk Kim <jaegeuk@kernel.org>
Tue, 19 Aug 2014 17:01:35 +0000 (10:01 -0700)
This is the errorneous scenario.
1. write data
2. do checkpoint
3. produce some dirty node pages by the gc thread
4. write back dirty node pages
5. f2fs_put_super will skip the checkpoint, since dirty count for node pages is
  zero.

This patch removes such the wrong condition check.

Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
fs/f2fs/super.c

index 633315a..60e3554 100644 (file)
@@ -432,7 +432,7 @@ static void f2fs_put_super(struct super_block *sb)
        stop_gc_thread(sbi);
 
        /* We don't need to do checkpoint when it's clean */
-       if (sbi->s_dirty && get_pages(sbi, F2FS_DIRTY_NODES))
+       if (sbi->s_dirty)
                write_checkpoint(sbi, true);
 
        iput(sbi->node_inode);