f2fs: don't keep META_MAPPING pages used for moving verity file blocks
authorEric Biggers <ebiggers@google.com>
Mon, 9 Dec 2019 20:00:55 +0000 (12:00 -0800)
committerJaegeuk Kim <jaegeuk@kernel.org>
Wed, 15 Jan 2020 21:43:48 +0000 (13:43 -0800)
META_MAPPING is used to move blocks for both encrypted and verity files.
So the META_MAPPING invalidation condition in do_checkpoint() should
consider verity too, not just encrypt.

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

index ffdaba0..44e84ac 100644 (file)
@@ -1509,10 +1509,10 @@ static int do_checkpoint(struct f2fs_sb_info *sbi, struct cp_control *cpc)
        f2fs_wait_on_all_pages_writeback(sbi);
 
        /*
-        * invalidate intermediate page cache borrowed from meta inode
-        * which are used for migration of encrypted inode's blocks.
+        * invalidate intermediate page cache borrowed from meta inode which are
+        * used for migration of encrypted or verity inode's blocks.
         */
-       if (f2fs_sb_has_encrypt(sbi))
+       if (f2fs_sb_has_encrypt(sbi) || f2fs_sb_has_verity(sbi))
                invalidate_mapping_pages(META_MAPPING(sbi),
                                MAIN_BLKADDR(sbi), MAX_BLKADDR(sbi) - 1);