public inbox for stable@vger.kernel.org
 help / color / mirror / Atom feed
From: Greg KH <gregkh@linuxfoundation.org>
To: Leah Rumancik <leah.rumancik@gmail.com>
Cc: stable@vger.kernel.org,
	Trond Myklebust <trond.myklebust@hammerspace.com>,
	Chuck Lever <chuck.lever@oracle.com>
Subject: Re: [PATCH 5.10] nfsd: Replace use of rwsem with errseq_t
Date: Thu, 16 Jun 2022 15:08:02 +0200	[thread overview]
Message-ID: <YqsrMsL7b/MAatuG@kroah.com> (raw)
In-Reply-To: <YqfMZ7ltC2+9IJmp@google.com>

On Mon, Jun 13, 2022 at 04:46:47PM -0700, Leah Rumancik wrote:
> On Mon, Jun 13, 2022 at 09:58:21AM +0200, Greg KH wrote:
> > On Tue, Jun 07, 2022 at 01:10:36PM -0700, Leah Rumancik wrote:
> > > From: Trond Myklebust <trond.myklebust@hammerspace.com>
> > > 
> > > [ Upstream commit 555dbf1a9aac6d3150c8b52fa35f768a692f4eeb ]
> > > 
> > > The nfsd_file nf_rwsem is currently being used to separate file write
> > > and commit instances to ensure that we catch errors and apply them to
> > > the correct write/commit.
> > > We can improve scalability at the expense of a little accuracy (some
> > > extra false positives) by replacing the nf_rwsem with more careful
> > > use of the errseq_t mechanism to track errors across the different
> > > operations.
> > > 
> > > [Leah: This patch is for 5.10. 5011af4c698a ("nfsd: Fix stable writes")
> > > introduced a 75% performance regression on parallel random write
> > > workloads. With this commit, the performance is restored to 90% of what
> > > it was prior to 5011af4c698a. The changes to the fsync for asynchronous
> > > copies were not included in this backport version as the fsync was not
> > > added until 5.14 (eac0b17a77fb).]
> > > 
> > > Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
> > > Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
> > > Signed-off-by: Leah Rumancik <leah.rumancik@gmail.com>
> > > [ cel: rebased on zero-verifier fix ]
> > > ---
> > >  fs/nfsd/filecache.c |  1 -
> > >  fs/nfsd/filecache.h |  1 -
> > >  fs/nfsd/nfs4proc.c  |  7 ++++---
> > >  fs/nfsd/vfs.c       | 40 +++++++++++++++-------------------------
> > >  4 files changed, 19 insertions(+), 30 deletions(-)
> > 
> > What about 5.15?  We can't take this patch for 5.10 only as if you
> > upgrade to 5.15 you would have a regression.  Can you provide a version
> > for that tree so that I can then apply this one too?
> > 
> > thanks,
> > 
> > greg k-h
> 
> Just sent the 5.15 version. The upstream commit
> (555dbf1a9aac6d3150c8b52fa35f768a692f4eeb) actually applies cleanly on
> 5.15 so you can pull that or the version I just sent with the
> justification for backporting. After applying this commit to 5.15, I
> confirmed there was no peformance regression.

Now all queued up, thanks.

greg k-h

      reply	other threads:[~2022-06-16 13:08 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-06-07 20:10 [PATCH 5.10] nfsd: Replace use of rwsem with errseq_t Leah Rumancik
2022-06-13  7:58 ` Greg KH
2022-06-13 23:46   ` Leah Rumancik
2022-06-16 13:08     ` Greg KH [this message]

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=YqsrMsL7b/MAatuG@kroah.com \
    --to=gregkh@linuxfoundation.org \
    --cc=chuck.lever@oracle.com \
    --cc=leah.rumancik@gmail.com \
    --cc=stable@vger.kernel.org \
    --cc=trond.myklebust@hammerspace.com \
    /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