On Fri, 2024-08-09 at 17:22 +0100, Matthew Wilcox (Oracle) wrote: > part three > > Signed-off-by: Matthew Wilcox (Oracle) <willy@xxxxxxxxxxxxx> > --- > fs/fuse/file.c | 4 +--- > 1 file changed, 1 insertion(+), 3 deletions(-) > > diff --git a/fs/fuse/file.c b/fs/fuse/file.c > index 2b5533e41a62..f39456c65ed7 100644 > --- a/fs/fuse/file.c > +++ b/fs/fuse/file.c > @@ -937,9 +937,7 @@ static void fuse_readpages_end(struct fuse_mount > *fm, struct fuse_args *args, > for (i = 0; i < ap->num_pages; i++) { > struct folio *folio = page_folio(ap->pages[i]); > > - if (!err) > - folio_mark_uptodate(folio); > - folio_unlock(folio); > + folio_end_read(folio, !err); > folio_put(folio); > } > if (ia->ff) Reverting this part is sufficient to fix the issue for me. Cheers, Jürg