f2fs: make f2fs_verify_cluster() partially large-folio-aware
authorEric Biggers <ebiggers@kernel.org>
Wed, 18 Feb 2026 01:06:29 +0000 (17:06 -0800)
committerEric Biggers <ebiggers@kernel.org>
Wed, 18 Feb 2026 07:11:36 +0000 (23:11 -0800)
f2fs_verify_cluster() is the only remaining caller of the
non-large-folio-aware function fsverity_verify_page().   To unblock the
removal of that function, change f2fs_verify_cluster() to verify the
entire folio of each page and mark it up-to-date.

Note that this doesn't actually make f2fs_verify_cluster()
large-folio-aware, as it is still passed an array of pages.  Currently,
it's never called with large folios.

Suggested-by: Matthew Wilcox <willy@infradead.org>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Link: https://lore.kernel.org/r/20260218010630.7407-3-ebiggers@kernel.org
Signed-off-by: Eric Biggers <ebiggers@kernel.org>
fs/f2fs/compress.c

index 355762d..8c76400 100644 (file)
@@ -1813,13 +1813,14 @@ static void f2fs_verify_cluster(struct work_struct *work)
        /* Verify, update, and unlock the decompressed pages. */
        for (i = 0; i < dic->cluster_size; i++) {
                struct page *rpage = dic->rpages[i];
+               struct folio *rfolio;
 
                if (!rpage)
                        continue;
-
-               if (fsverity_verify_page(dic->vi, rpage))
-                       SetPageUptodate(rpage);
-               unlock_page(rpage);
+               rfolio = page_folio(rpage);
+               if (fsverity_verify_folio(dic->vi, rfolio))
+                       folio_mark_uptodate(rfolio);
+               folio_unlock(rfolio);
        }
 
        f2fs_put_dic(dic, true);