Re: [PATCH] netfs: Fault in smaller chunks for non-large folio mappings

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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>





[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [NTFS 3]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [NTFS 3]     [Samba]     [Device Mapper]     [CEPH Development]

  Powered by Linux