On Mon, 2024-05-27 at 21:17 +0100, Matthew Wilcox (Oracle) wrote: > As in commit 4e527d5841e2 ("iomap: fault in smaller chunks for non- > large > folio mappings"), we can see a performance loss for filesystems > which have not yet been converted to large folios. > > Fixes: c38f4e96e605 ("netfs: Provide func to copy data to pagecache > for buffered write") > Signed-off-by: Matthew Wilcox (Oracle) <willy@xxxxxxxxxxxxx> > --- > fs/netfs/buffered_write.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/fs/netfs/buffered_write.c b/fs/netfs/buffered_write.c > index 07bc1fd43530..3288561e98dd 100644 > --- a/fs/netfs/buffered_write.c > +++ b/fs/netfs/buffered_write.c > @@ -184,7 +184,7 @@ ssize_t netfs_perform_write(struct kiocb *iocb, > struct iov_iter *iter, > unsigned int bdp_flags = (iocb->ki_flags & IOCB_NOWAIT) ? > BDP_ASYNC : 0; > ssize_t written = 0, ret, ret2; > loff_t i_size, pos = iocb->ki_pos, from, to; > - size_t max_chunk = PAGE_SIZE << MAX_PAGECACHE_ORDER; > + size_t max_chunk = mapping_max_folio_size(mapping); > bool maybe_trouble = false; > > if (unlikely(test_bit(NETFS_ICTX_WRITETHROUGH, &ctx->flags) > || Reviewed-by: Jeff Layton <jlayton@xxxxxxxxxx>