Re: [PATCH 0/3] nfs: fix -ENOSPC DIO write regression

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

 



On Sun, 2022-07-24 at 19:10 +0000, Trond Myklebust wrote:
> On Fri, 2022-07-22 at 14:12 -0400, Jeff Layton wrote:
> > Boyang reported that xfstest generic/476 would never complete when
> > run
> > against a filesystem that was "too small".
> > 
> > What I found was that we would end up trying to issue a large DIO
> > write
> > that would come back short. The kernel would then follow up and try
> > to
> > write out the rest and get back -ENOSPC. It would then try to issue
> > a
> > commit, which would then try to reissue the writes, and around it
> > would
> > go.
> > 
> > This patchset seems to fix it. Unfortunately, I'm not positive
> > which
> > patch _broke_ this as it seems to have happened quite some time
> > ago.
> > 
> > Jeff Layton (3):
> >   nfs: add new nfs_direct_req tracepoint events
> >   nfs: always check dreq->error after a commit
> >   nfs: only issue commit in DIO codepath if we have uncommitted
> > data
> > 
> >  fs/nfs/direct.c         | 50 +++++++++--------------------
> >  fs/nfs/internal.h       | 33 ++++++++++++++++++++
> >  fs/nfs/nfstrace.h       | 69
> > +++++++++++++++++++++++++++++++++++++++++
> >  fs/nfs/write.c          | 48 +++++++++++++++++-----------
> >  include/linux/nfs_xdr.h |  1 +
> >  5 files changed, 148 insertions(+), 53 deletions(-)
> > 
> 
> With this series applied, I'm seeing things like xfstests generic/013
> looping forever.
> 

Sorry, false alarm... That turned out to be due to an interesting
readahead config issue.

-- 
Trond Myklebust
Linux NFS client maintainer, Hammerspace
trond.myklebust@xxxxxxxxxxxxxxx






[Index of Archives]     [Linux Filesystem Development]     [Linux USB Development]     [Linux Media Development]     [Video for Linux]     [Linux NILFS]     [Linux Audio Users]     [Yosemite Info]     [Linux SCSI]

  Powered by Linux