Re: linux-next: build failure after merge of the vfs tree

From: Namjae Jeon

Date: Tue Mar 10 2026 - 10:42:00 EST


On Tue, Mar 10, 2026 at 10:21 PM Mark Brown <broonie@xxxxxxxxxx> wrote:
>
> Hi all,
Hi Mark,
>
> After merging the vfs tree, today's linux-next build (arm
> multi_v7_defconfig) failed like this:
>
> /tmp/next/build/fs/ntfs/mft.c: In function 'ntfs_may_write_mft_record':
> /tmp/next/build/fs/ntfs/mft.c:773:52: error: passing argument 3 of 'find_inode_nowait' from incompatible pointer type [-Wincompatible-pointer-types]
> 773 | vi = find_inode_nowait(sb, mft_no, ntfs_test_inode_wb, &na);
> | ^~~~~~~~~~~~~~~~~~
> | |
> | int (*)(struct inode *, long unsigned int, void *)
> In file included from /tmp/next/build/include/linux/writeback.h:10,
> from /tmp/next/build/fs/ntfs/mft.c:11:
> /tmp/next/build/include/linux/fs.h:2955:39: note: expected 'int (*)(struct inode *, u64, void *)' {aka 'int (*)(struct inode *, long long unsigned int, void *)'} but argument is of type 'int (*)(struct inode *, long unsigned int, void *)'
> 2955 | int (*match)(struct inode *, u64, void *),
> | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> /tmp/next/build/fs/ntfs/mft.c:836:52: error: passing argument 3 of 'find_inode_nowait' from incompatible pointer type [-Wincompatible-pointer-types]
> 836 | vi = find_inode_nowait(sb, mft_no, ntfs_test_inode_wb, &na);
> | ^~~~~~~~~~~~~~~~~~
> | |
> | int (*)(struct inode *, long unsigned int, void *)
> /tmp/next/build/include/linux/fs.h:2955:39: note: expected 'int (*)(struct inode *, u64, void *)' {aka 'int (*)(struct inode *, long long unsigned int, void *)'} but argument is of type 'int (*)(struct inode *, long unsigned int, void *)'
> 2955 | int (*match)(struct inode *, u64, void *),
> | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>
> Caused by commit
>
> 0b2600f81cefc (treewide: change inode->i_ino from unsigned long to u64)
>
> interacting with the addition of the ntfs tree. I have fixed this up as
> below and can carry as needed:
>
> commit d1b19b9f221c93e8fd0f43b80509ba1660e25cf9
> Author: Mark Brown <broonie@xxxxxxxxxx>
> Date: Tue Mar 10 12:33:15 2026 +0000
>
> ntfs: Fixup merge issue with vfs.all changes
>
> /tmp/next/build/fs/ntfs/mft.c: In function 'ntfs_may_write_mft_record':
> /tmp/next/build/fs/ntfs/mft.c:773:52: error: passing argument 3 of 'find_inode_nowait' from incompatible pointer type [-Wincompatible-pointer-types]
> 773 | vi = find_inode_nowait(sb, mft_no, ntfs_test_inode_wb, &na);
> | ^~~~~~~~~~~~~~~~~~
> | |
> | int (*)(struct inode *, long unsigned int, void *)
> In file included from /tmp/next/build/include/linux/writeback.h:10,
> from /tmp/next/build/fs/ntfs/mft.c:11:
> /tmp/next/build/include/linux/fs.h:2955:39: note: expected 'int (*)(struct inode *, u64, void *)' {aka 'int (*)(struct inode *, long long unsigned int, void *)'} but argument is of type 'int (*)(struct inode *, long unsigned int, void *)'
> 2955 | int (*match)(struct inode *, u64, void *),
> | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> /tmp/next/build/fs/ntfs/mft.c:836:52: error: passing argument 3 of 'find_inode_nowait' from incompatible pointer type [-Wincompatible-pointer-types]
> 836 | vi = find_inode_nowait(sb, mft_no, ntfs_test_inode_wb, &na);
> | ^~~~~~~~~~~~~~~~~~
> | |
> | int (*)(struct inode *, long unsigned int, void *)
> /tmp/next/build/include/linux/fs.h:2955:39: note: expected 'int (*)(struct inode *, u64, void *)' {aka 'int (*)(struct inode *, long long unsigned int, void *)'} but argument is of type 'int (*)(struct inode *, long unsigned int, void *)'
> 2955 | int (*match)(struct inode *, u64, void *),
> | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>
> Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>
>
> diff --git a/fs/ntfs/mft.c b/fs/ntfs/mft.c
> index 48e64eaa7ec33..0c3f8d9b7c3a4 100644
> --- a/fs/ntfs/mft.c
> +++ b/fs/ntfs/mft.c
> @@ -632,7 +632,7 @@ int write_mft_record_nolock(struct ntfs_inode *ni, struct mft_record *m, int syn
> return err;
> }
>
> -static int ntfs_test_inode_wb(struct inode *vi, unsigned long ino, void *data)
> +static int ntfs_test_inode_wb(struct inode *vi, u64 ino, void *data)
> {
> struct ntfs_attr *na = data;
Looks good to me:)
Thanks for fixing it up and carrying the patch!