diff options
author | Trond Myklebust <Trond.Myklebust@netapp.com> | 2011-04-24 20:28:18 +0200 |
---|---|---|
committer | Trond Myklebust <Trond.Myklebust@netapp.com> | 2011-04-24 20:28:18 +0200 |
commit | fd954ae124e8a866e9cc1bc3de9a07be5492f608 (patch) | |
tree | b45b1a58287e2e77afb1da4ed8ead0c3a8688c2d /include | |
parent | NFSv4: Handle NFS4ERR_WRONGSEC outside of nfs4_handle_exception() (diff) | |
download | linux-fd954ae124e8a866e9cc1bc3de9a07be5492f608.tar.xz linux-fd954ae124e8a866e9cc1bc3de9a07be5492f608.zip |
NFSv4.1: Don't loop forever in nfs4_proc_create_session
If a server for some reason keeps sending NFS4ERR_DELAY errors, we can end
up looping forever inside nfs4_proc_create_session, and so the usual
mechanisms for detecting if the nfs_client is dead don't work.
Fix this by ensuring that we loop inside the nfs4_state_manager thread
instead.
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/nfs_fs_sb.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/include/linux/nfs_fs_sb.h b/include/linux/nfs_fs_sb.h index 216cea5db0aa..87694ca86914 100644 --- a/include/linux/nfs_fs_sb.h +++ b/include/linux/nfs_fs_sb.h @@ -47,6 +47,7 @@ struct nfs_client { #ifdef CONFIG_NFS_V4 u64 cl_clientid; /* constant */ + nfs4_verifier cl_confirm; /* Clientid verifier */ unsigned long cl_state; spinlock_t cl_lock; |