projects
/
openwrt
/
staging
/
blogic.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
32b0131
)
NFSv4.1: nfs4_bind_conn_to_session should drain the session
author
Trond Myklebust
<Trond.Myklebust@netapp.com>
Sun, 27 May 2012 17:47:21 +0000
(13:47 -0400)
committer
Trond Myklebust
<Trond.Myklebust@netapp.com>
Sun, 27 May 2012 18:00:08 +0000
(14:00 -0400)
In order to avoid races with other RPC calls that end up setting the
NFS4CLNT_BIND_CONN_TO_SESSION flag.
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
fs/nfs/nfs4state.c
patch
|
blob
|
history
diff --git
a/fs/nfs/nfs4state.c
b/fs/nfs/nfs4state.c
index 7dbca666283a0403b08d1278ae9d5fb7925ba91c..d21ed0309601560e08a6660cac8e9221f6e1035c 100644
(file)
--- a/
fs/nfs/nfs4state.c
+++ b/
fs/nfs/nfs4state.c
@@
-1782,10
+1782,12
@@
static int nfs4_bind_conn_to_session(struct nfs_client *clp)
struct rpc_cred *cred;
int ret;
+ nfs4_begin_drain_session(clp);
cred = nfs4_get_exchange_id_cred(clp);
ret = nfs4_proc_bind_conn_to_session(clp, cred);
if (cred)
put_rpccred(cred);
+ clear_bit(NFS4CLNT_BIND_CONN_TO_SESSION, &clp->cl_state);
return ret;
}
#else /* CONFIG_NFS_V4_1 */