From: Mark Brown <broonie@kernel.org>
To: Eric Biggers <ebiggers@kernel.org>,
"Theodore Y. Ts'o" <tytso@mit.edu>,
Jaegeuk Kim <jaegeuk@kernel.org>, Chao Yu <chao@kernel.org>,
Christoph Hellwig <hch@lst.de>
Cc: Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
Linux Next Mailing List <linux-next@vger.kernel.org>
Subject: linux-next: build failure after merge of the fsverity tree
Date: Tue, 3 Feb 2026 13:36:34 +0000 [thread overview]
Message-ID: <aYH54qJee85qLLkN@sirena.org.uk> (raw)
[-- Attachment #1: Type: text/plain, Size: 7576 bytes --]
Hi all,
After merging the fsverity tree, today's linux-next build (x86_64
allmodconfig) failed like this:
/tmp/next/build/fs/f2fs/data.c: In function 'f2fs_read_data_large_folio':
/tmp/next/build/fs/f2fs/data.c:2525:51: error: passing argument 1 of 'fsverity_verify_page' from incompatible pointer type [-Wincompatible-pointer-types]
2525 | !fsverity_verify_page(folio_file_page(folio,
| ^~~~~~~~~~~~~~~~~~~~~~
| |
| struct page *
2526 | index))) {
| ~~~~~~
In file included from /tmp/next/build/fs/f2fs/f2fs.h:29,
from /tmp/next/build/fs/f2fs/data.c:24:
/tmp/next/build/include/linux/fsverity.h:285:63: note: expected 'struct fsverity_info *' but argument is of type 'struct page *'
285 | static inline bool fsverity_verify_page(struct fsverity_info *vi,
| ~~~~~~~~~~~~~~~~~~~~~~^~
/tmp/next/build/fs/f2fs/data.c:2525:30: error: too few arguments to function 'fsverity_verify_page'
2525 | !fsverity_verify_page(folio_file_page(folio,
| ^~~~~~~~~~~~~~~~~~~~
/tmp/next/build/include/linux/fsverity.h:285:20: note: declared here
285 | static inline bool fsverity_verify_page(struct fsverity_info *vi,
| ^~~~~~~~~~~~~~~~~~~~
/tmp/next/build/fs/f2fs/data.c:2557:57: error: passing argument 2 of 'f2fs_grab_read_bio' makes pointer from integer without a cast [-Wint-conversion]
2557 | bio = f2fs_grab_read_bio(inode, block_nr,
| ^~~~~~~~
| |
| sector_t {aka long long unsigned int}
/tmp/next/build/fs/f2fs/data.c:1100:61: note: expected 'struct fsverity_info *' but argument is of type 'sector_t' {aka 'long long unsigned int'}
1100 | struct fsverity_info *vi, block_t blkaddr,
| ~~~~~~~~~~~~~~~~~~~~~~^~
/tmp/next/build/fs/f2fs/data.c:2557:31: error: too few arguments to function 'f2fs_grab_read_bio'
2557 | bio = f2fs_grab_read_bio(inode, block_nr,
| ^~~~~~~~~~~~~~~~~~
/tmp/next/build/fs/f2fs/data.c:1099:20: note: declared here
1099 | static struct bio *f2fs_grab_read_bio(struct inode *inode,
| ^~~~~~~~~~~~~~~~~~
Caused by commit
3428cd0a9498a (f2fs: consolidate fsverity_info lookup)
interacting with
05e65c14ea59 (f2fs: support large folio for immutable non-compressed case)
I have (hopefully) fixed it up, see below, and can carry as needed.
From a954b589f2aa0da3f2522dbeaf342966190a4139 Mon Sep 17 00:00:00 2001
From: Mark Brown <broonie@kernel.org>
Date: Tue, 3 Feb 2026 13:19:22 +0000
Subject: [PATCH] f2fs: Fix interaction with fsverity changes
/tmp/next/build/fs/f2fs/data.c: In function 'f2fs_read_data_large_folio':
/tmp/next/build/fs/f2fs/data.c:2525:51: error: passing argument 1 of 'fsverity_verify_page' from incompatible pointer type [-Wincompatible-pointer-types]
2525 | !fsverity_verify_page(folio_file_page(folio,
| ^~~~~~~~~~~~~~~~~~~~~~
| |
| struct page *
2526 | index))) {
| ~~~~~~
In file included from /tmp/next/build/fs/f2fs/f2fs.h:29,
from /tmp/next/build/fs/f2fs/data.c:24:
/tmp/next/build/include/linux/fsverity.h:285:63: note: expected 'struct fsverity_info *' but argument is of type 'struct page *'
285 | static inline bool fsverity_verify_page(struct fsverity_info *vi,
| ~~~~~~~~~~~~~~~~~~~~~~^~
/tmp/next/build/fs/f2fs/data.c:2525:30: error: too few arguments to function 'fsverity_verify_page'
2525 | !fsverity_verify_page(folio_file_page(folio,
| ^~~~~~~~~~~~~~~~~~~~
/tmp/next/build/include/linux/fsverity.h:285:20: note: declared here
285 | static inline bool fsverity_verify_page(struct fsverity_info *vi,
| ^~~~~~~~~~~~~~~~~~~~
/tmp/next/build/fs/f2fs/data.c:2557:57: error: passing argument 2 of 'f2fs_grab_read_bio' makes pointer from integer without a cast [-Wint-conversion]
2557 | bio = f2fs_grab_read_bio(inode, block_nr,
| ^~~~~~~~
| |
| sector_t {aka long long unsigned int}
/tmp/next/build/fs/f2fs/data.c:1100:61: note: expected 'struct fsverity_info *' but argument is of type 'sector_t' {aka 'long long unsigned int'}
1100 | struct fsverity_info *vi, block_t blkaddr,
| ~~~~~~~~~~~~~~~~~~~~~~^~
/tmp/next/build/fs/f2fs/data.c:2557:31: error: too few arguments to function 'f2fs_grab_read_bio'
2557 | bio = f2fs_grab_read_bio(inode, block_nr,
| ^~~~~~~~~~~~~~~~~~
/tmp/next/build/fs/f2fs/data.c:1099:20: note: declared here
1099 | static struct bio *f2fs_grab_read_bio(struct inode *inode,
| ^~~~~~~~~~~~~~~~~~
Signed-off-by: Mark Brown <broonie@kernel.org>
---
fs/f2fs/data.c | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/fs/f2fs/data.c b/fs/f2fs/data.c
index d9085d1236d97..46b4f70f8faf5 100644
--- a/fs/f2fs/data.c
+++ b/fs/f2fs/data.c
@@ -2451,6 +2451,7 @@ static void ffs_detach_free(struct folio *folio)
}
static int f2fs_read_data_large_folio(struct inode *inode,
+ struct fsverity_info *vi,
struct readahead_control *rac, struct folio *folio)
{
struct bio *bio = NULL;
@@ -2522,7 +2523,7 @@ static int f2fs_read_data_large_folio(struct inode *inode,
} else {
folio_zero_range(folio, offset << PAGE_SHIFT, PAGE_SIZE);
if (f2fs_need_verity(inode, index) &&
- !fsverity_verify_page(folio_file_page(folio,
+ !fsverity_verify_page(vi, folio_file_page(folio,
index))) {
ret = -EIO;
goto err_out;
@@ -2554,7 +2555,7 @@ static int f2fs_read_data_large_folio(struct inode *inode,
bio = NULL;
}
if (bio == NULL)
- bio = f2fs_grab_read_bio(inode, block_nr,
+ bio = f2fs_grab_read_bio(inode, vi, block_nr,
max_nr_pages,
f2fs_ra_op_flags(rac),
index, false);
@@ -2629,7 +2630,7 @@ static int f2fs_mpage_readpages(struct inode *inode, struct fsverity_info *vi,
int ret = 0;
if (mapping_large_folio_support(mapping))
- return f2fs_read_data_large_folio(inode, rac, folio);
+ return f2fs_read_data_large_folio(inode, vi, rac, folio);
#ifdef CONFIG_F2FS_FS_COMPRESSION
if (f2fs_compressed_file(inode)) {
--
2.47.3
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
next reply other threads:[~2026-02-03 13:36 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-02-03 13:36 Mark Brown [this message]
2026-02-03 16:29 ` linux-next: build failure after merge of the fsverity tree Christoph Hellwig
2026-02-03 17:02 ` Mark Brown
2026-02-04 17:39 ` kernel test robot
2026-02-04 17:39 ` kernel test robot
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=aYH54qJee85qLLkN@sirena.org.uk \
--to=broonie@kernel.org \
--cc=chao@kernel.org \
--cc=ebiggers@kernel.org \
--cc=hch@lst.de \
--cc=jaegeuk@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-next@vger.kernel.org \
--cc=tytso@mit.edu \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox