linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Leon Romanovsky <leon@kernel.org>
To: Christian Brauner <brauner@kernel.org>,
	David Howells <dhowells@redhat.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>,
	linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [GIT PULL] vfs netfs
Date: Thu, 26 Sep 2024 20:40:43 +0300	[thread overview]
Message-ID: <20240926174043.GA2166429@unreal> (raw)
In-Reply-To: <20240913-vfs-netfs-39ef6f974061@brauner>

On Fri, Sep 13, 2024 at 06:56:36PM +0200, Christian Brauner wrote:
> Hey Linus,
> 
> /* Summary */
> 
> This contains the work to improve read/write performance for the new
> netfs library.
> 
> The main performance enhancing changes are:
> 
>     - Define a structure, struct folio_queue, and a new iterator type,
>       ITER_FOLIOQ, to hold a buffer as a replacement for ITER_XARRAY. See
>       that patch for questions about naming and form.
> 
>       ITER_FOLIOQ is provided as a replacement for ITER_XARRAY. The
>       problem with an xarray is that accessing it requires the use of a
>       lock (typically the RCU read lock) - and this means that we can't
>       supply iterate_and_advance() with a step function that might sleep
>       (crypto for example) without having to drop the lock between
>       pages. ITER_FOLIOQ is the iterator for a chain of folio_queue
>       structs, where each folio_queue holds a small list of folios. A
>       folio_queue struct is a simpler structure than xarray and is not
>       subject to concurrent manipulation by the VM. folio_queue is used
>       rather than a bvec[] as it can form lists of indefinite size,
>       adding to one end and removing from the other on the fly.

<...>

> David Howells (24):
>       cachefiles: Fix non-taking of sb_writers around set/removexattr
>       netfs: Adjust labels in /proc/fs/netfs/stats
>       netfs: Record contention stats for writeback lock
>       netfs: Reduce number of conditional branches in netfs_perform_write()
>       netfs, cifs: Move CIFS_INO_MODIFIED_ATTR to netfs_inode
>       netfs: Move max_len/max_nr_segs from netfs_io_subrequest to netfs_io_stream
>       netfs: Reserve netfs_sreq_source 0 as unset/unknown
>       netfs: Remove NETFS_COPY_TO_CACHE
>       netfs: Set the request work function upon allocation
>       netfs: Use bh-disabling spinlocks for rreq->lock
>       mm: Define struct folio_queue and ITER_FOLIOQ to handle a sequence of folios
>       iov_iter: Provide copy_folio_from_iter()
>       cifs: Provide the capability to extract from ITER_FOLIOQ to RDMA SGEs
>       netfs: Use new folio_queue data type and iterator instead of xarray iter
>       netfs: Provide an iterator-reset function
>       netfs: Simplify the writeback code
>       afs: Make read subreqs async
>       netfs: Speed up buffered reading
>       netfs: Remove fs/netfs/io.c
>       cachefiles, netfs: Fix write to partial block at EOF
>       netfs: Cancel dirty folios that have no storage destination
>       cifs: Use iterate_and_advance*() routines directly for hashing
>       cifs: Switch crypto buffer to use a folio_queue rather than an xarray
>       cifs: Don't support ITER_XARRAY

Christian, David,

Do you have fixes for the following issues reported for series?
https://lore.kernel.org/all/20240923183432.1876750-1-chantr4@gmail.com/
https://lore.kernel.org/all/4b5621958a758da830c1cf09c6f6893aed371f9d.camel@gmail.com/
https://lore.kernel.org/all/20240924094809.GA1182241@unreal/

In my case, I don't have any other workaround but simply revert these commits:
 "netfs: Use new folio_queue data type and iterator instead of xarray iter"
 "netfs: Provide an iterator-reset function"
 "netfs: Simplify the writeback code"
 "afs: Make read subreqs async"
 "netfs: Speed up buffered reading"
 "netfs: Remove fs/netfs/io.c"
 "cachefiles, netfs: Fix write to partial block at EOF"
 "netfs: Cancel dirty folios that have no storage destination"
 "cifs: Use iterate_and_advance*() routines directly for hashing"
 "cifs: Switch crypto buffer to use a folio_queue rather than an xarray"
 "cifs: Don't support ITER_XARRAY"
 "cifs: Fix signature miscalculation"
 "cifs: Fix cifs readv callback merge resolution issue"
 "cifs: Remove redundant setting of NETFS_SREQ_HIT_EOF"

Thanks

  parent reply	other threads:[~2024-09-26 17:40 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-09-13 16:56 [GIT PULL] vfs netfs Christian Brauner
2024-09-16 10:28 ` Linus Torvalds
2024-09-16 11:09 ` pr-tracker-bot
2024-09-16 12:58 ` David Howells
2024-09-16 13:50 ` [PATCH] cifs: Fix cifs readv callback merge resolution issue David Howells
2024-09-16 14:08   ` Linus Torvalds
2024-09-16 15:33   ` David Howells
2024-09-16 16:49     ` Linus Torvalds
2024-09-16 14:02 ` [PATCH] cifs: Remove redundant setting of NETFS_SREQ_HIT_EOF David Howells
2024-09-26 17:40 ` Leon Romanovsky [this message]
2024-09-27  8:01 ` [GIT PULL] vfs netfs David Howells
2024-09-27 16:34   ` Leon Romanovsky
2024-09-27 20:31   ` David Howells
2024-09-28 10:11     ` Leon Romanovsky
  -- strict thread matches above, loose matches on Subject: below --
2025-06-02 10:11 Christian Brauner
2025-06-02 22:58 ` pr-tracker-bot
2025-01-18 12:55 Christian Brauner
2025-01-20 18:59 ` pr-tracker-bot
2024-11-15 14:00 Christian Brauner
2024-11-18 18:29 ` Linus Torvalds
2024-11-20  8:49   ` Christian Brauner
2024-11-20 17:09     ` Linus Torvalds
2024-11-20 19:53       ` Christian Brauner
2024-11-18 19:49 ` pr-tracker-bot
2024-05-10 11:47 Christian Brauner
2024-05-13 19:38 ` pr-tracker-bot

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20240926174043.GA2166429@unreal \
    --to=leon@kernel.org \
    --cc=brauner@kernel.org \
    --cc=dhowells@redhat.com \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=torvalds@linux-foundation.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).