• Chuck Lever's avatar
    NFS: Slow down state manager after an unhandled error · ffe5a830
    Chuck Lever authored
    If the state manager thread is not actually able to fully recover from
    some situation, it wakes up waiters, who kick off a new state manager
    thread.  Quite often the fresh invocation of the state manager is just
    as successful.
    
    This results in a livelock as the client dumps thousands of NFS
    requests a second on the network in a vain attempt to recover.  Not
    very friendly.
    
    To mitigate this situation, add a delay in the state manager after
    an unhandled error, so that the client sends just a few requests
    every second in this case.
    Signed-off-by: default avatarChuck Lever <chuck.lever@oracle.com>
    Signed-off-by: default avatarTrond Myklebust <Trond.Myklebust@netapp.com>
    ffe5a830
nfs4state.c 53.7 KB