Re: still seeing single client NFS4ERR_DELAY / CB_RECALL

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

 



On Sun, Aug 09, 2020 at 01:11:36PM -0400, Chuck Lever wrote:
> Hi Bruce-
> 
> I noticed that one of my tests takes about 4x longer on NFSv4.0 than
> it does on NFSv3 or NFSv4.[12]. As an initial stab at the cause, I'm
> seeing lots of these:

Oops, looks obvious in retrospect, but I didn't think of it.

In the 4.1+ case, sessions mean that we know which client every
operation comes from.

In the 4.0 case that only works for operations that take a stateid or
something else we can link back to a client.

That means in the 4.0 case delegations are less useful, since they have
to be broken on any (non-truncating) setattr, any link/unlink, etc.,
even if the operation comes from the same client--the server doesn't
have a way to know that.

Maybe the change to give out read delegations even on write opens
probably just isn't worth in the 4.0 case.

--b.


> 
>            <...>-283894 [003]  4060.507314: nfs4_xdr_status:
>            task:51308@5 xid=0x1ec806a9 error=-10008 (DELAY)
>            operation=34 <...>-283894 [003]  4060.507338: nfs4_setattr:
>            error=-10008 (DELAY) fileid=00:27:258012 fhandle=0x25ef273d
>            stateid=0:0x7bd5c66f <...>-283982 [006]  4060.508134:
>            nfs4_state_mgr:       hostname=klimt.ib clp
>            state=CHECK_LEASE|0x4020 NFSv4-6239  [007]  4060.508137:
>            nfs4_cb_recall:       error=0 (OK) fileid=00:27:258012
>            fhandle=0x25ef273d stateid=1:0x910c8d4c dstaddr=klimt.ib
> 
> The workload is the git regression suite, which I run like this on a
> single client:
> 
>   --- mount test export ---
> 
>  $ cd /mnt; rm -rf git*; tar zvxf ~/Downloads/git-2.23.0.tar.gz
> 
>   --- remount test export ---
> 
>  $ cd /mnt/git*; make clean; make -j12
> 
>   --- remount test export ---
> 
>  $ cd /mnt/git*; make -j12 test
> 
> -- Chuck Lever
> 
> 



[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