Re: linux-next: manual merge of the fuse tree with the vfs-brauner-fixes tree
From: Miklos Szeredi
Date: Fri May 22 2026 - 08:32:39 EST
On Fri, 22 May 2026 at 13:05, Mark Brown <broonie@xxxxxxxxxx> wrote:
>
> Hi all,
>
> Today's linux-next merge of the fuse tree got a conflict in:
>
> fs/fuse/dev.c
>
> between commit:
>
> eac1801510181 ("fuse: limit FUSE_NOTIFY_RETRIEVE to uptodate folios")
>
> from the vfs-brauner-fixes tree and commit:
>
> 77ad933a2e6d5 ("fuse: create notify.c")
>
> from the fuse tree.
>
> I fixed it up (see below) and can carry the fix as necessary. This
> is now fixed as far as linux-next is concerned, but any non trivial
> conflicts should be mentioned to your upstream maintainer when your tree
> is submitted for merging. You may also want to consider cooperating
> with the maintainer of the conflicting tree to minimise any particularly
> complex conflicts.
>
> I'm not convinced this is fully correct, I didn't spot the equivalent
> code in notify.c, though given that I see the fix was acked by Miklos
> it may be that the issue is taken care of in the new FUSE code?
The code does exist in notify.c, it was just moved. Attaching correct
merge resolution.
Thanks,
Miklos
diff --cc fs/fuse/dev.c
index 08d364ed7d6c,be4e66ed633c..000000000000
--- a/fs/fuse/dev.c
+++ b/fs/fuse/dev.c
diff --git a/fs/fuse/notify.c b/fs/fuse/notify.c
index f200a33f0533..06229c4c097e 100644
--- a/fs/fuse/notify.c
+++ b/fs/fuse/notify.c
@@ -279,6 +279,10 @@ static int fuse_retrieve(struct fuse_mount *fm, struct inode *inode,
folio = filemap_get_folio(mapping, index);
if (IS_ERR(folio))
break;
+ if (!folio_test_uptodate(folio)) {
+ folio_put(folio);
+ break;
+ }
folio_offset = offset_in_folio(folio, pos);
nr_bytes = min(folio_size(folio) - folio_offset, num);