Re: [PATCH] nfsd: remove unneeded EEXIST error check in nfsd_do_file_acquire

From: Youzhong Yang
Date: Fri Jul 12 2024 - 09:37:23 EST


It's in progress, I will report back once it's done, most likely late
this afternoon. This time it will have much more nfs load on the
server.

On Fri, Jul 12, 2024 at 9:32 AM Chuck Lever <chuck.lever@xxxxxxxxxx> wrote:
>
> On Thu, Jul 11, 2024 at 03:11:13PM -0400, Jeff Layton wrote:
> > Given that we do the search and insertion while holding the i_lock, I
> > don't think it's possible for us to get EEXIST here. Remove this case.
> >
> > Cc: Youzhong Yang <youzhong@xxxxxxxxx>
> > Fixes: c6593366c0bf ("nfsd: don't kill nfsd_files because of lease break error")
> > Signed-off-by: Jeff Layton <jlayton@xxxxxxxxxx>
> > ---
> > This is replacement for PATCH 1/3 in the series I sent yesterday. I
> > think it makes sense to just eliminate this case.
> > ---
> > fs/nfsd/filecache.c | 2 --
> > 1 file changed, 2 deletions(-)
> >
> > diff --git a/fs/nfsd/filecache.c b/fs/nfsd/filecache.c
> > index f84913691b78..b9dc7c22242c 100644
> > --- a/fs/nfsd/filecache.c
> > +++ b/fs/nfsd/filecache.c
> > @@ -1038,8 +1038,6 @@ nfsd_file_do_acquire(struct svc_rqst *rqstp, struct svc_fh *fhp,
> > if (likely(ret == 0))
> > goto open_file;
> >
> > - if (ret == -EEXIST)
> > - goto retry;
> > trace_nfsd_file_insert_err(rqstp, inode, may_flags, ret);
> > status = nfserr_jukebox;
> > goto construction_err;
> >
> > ---
> > base-commit: ec1772c39fa8dd85340b1a02040806377ffbff27
> > change-id: 20240711-nfsd-next-c9d17f66e2bd
> >
> > Best regards,
> > --
> > Jeff Layton <jlayton@xxxxxxxxxx>
>
> Youzhong, can you replace 1/3 in Jeff's file cache series and
> test again please?
>
> --
> Chuck Lever