summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--xlators/nfs/server/src/nfs3.c3
-rw-r--r--xlators/nfs/server/src/nfs3.h1
2 files changed, 3 insertions, 1 deletions
diff --git a/xlators/nfs/server/src/nfs3.c b/xlators/nfs/server/src/nfs3.c
index 712bbcaf3..57d9f576e 100644
--- a/xlators/nfs/server/src/nfs3.c
+++ b/xlators/nfs/server/src/nfs3.c
@@ -181,6 +181,7 @@ nfs3_call_state_init (struct nfs3_state *s, rpcsvc_request_t *req, xlator_t *v)
cs->req = req;
cs->vol = v;
cs->nfsx = s->nfsx;
+ cs->nfs3state = s;
return cs;
}
@@ -192,7 +193,7 @@ nfs3_call_state_wipe (nfs3_call_state_t *cs)
if (!cs)
return;
- nfs3 = rpcsvc_request_program_private (cs->req);
+ nfs3 = cs->nfs3state;
if (cs->fd) {
gf_log (GF_NFS3, GF_LOG_TRACE, "fd ref: %d", cs->fd->refcount);
fd_unref (cs->fd);
diff --git a/xlators/nfs/server/src/nfs3.h b/xlators/nfs/server/src/nfs3.h
index 1ec5a20a8..bb5fbb750 100644
--- a/xlators/nfs/server/src/nfs3.h
+++ b/xlators/nfs/server/src/nfs3.h
@@ -148,6 +148,7 @@ struct nfs3_local {
xlator_t *vol;
nfs3_resume_fn_t resume_fn;
xlator_t *nfsx;
+ struct nfs3_state *nfs3state;
/* The list hook to attach this call state to the inode's queue till
* the opening of the fd on the inode completes.