summaryrefslogtreecommitdiffstats
path: root/xlators/nfs/server/src/nfs3.h
diff options
context:
space:
mode:
authorVijay Bellur <vijay@dev.gluster.com>2010-10-11 12:31:26 -0700
committerVijay Bellur <vijay@dev.gluster.com>2010-10-11 12:31:26 -0700
commit61308de7645f1df462bef50e9c22237899218c65 (patch)
tree70adda68e7b570e7bb0d1866dd76bda1b870d279 /xlators/nfs/server/src/nfs3.h
parentd31e97336aac057510203f0942856b66baf4a91b (diff)
Revert "Revert "nfs3: Revalidate inode on receiving ESTALE on lookup""
This reverts commit 6dd3b7fa3bc7acf9281cc17f08010675e2297089.
Diffstat (limited to 'xlators/nfs/server/src/nfs3.h')
-rw-r--r--xlators/nfs/server/src/nfs3.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/xlators/nfs/server/src/nfs3.h b/xlators/nfs/server/src/nfs3.h
index a43fdc4af..823a911dc 100644
--- a/xlators/nfs/server/src/nfs3.h
+++ b/xlators/nfs/server/src/nfs3.h
@@ -134,6 +134,10 @@ struct nfs3_state {
int fdcount;
};
+typedef enum nfs3_revalidate {
+ GF_NFS3_REVALIDATE = 1,
+ GF_NFS3_NONREVALIDATE
+} nfs3_revalidate_t;
typedef int (*nfs3_resume_fn_t) (void *cs);
/* Structure used to communicate state between a fop and its callback.
@@ -197,8 +201,11 @@ struct nfs3_local {
int hashidx;
fd_t *resolve_dir_fd;
char *resolventry;
+ nfs3_revalidate_t revalidate;
};
+#define nfs3_is_revalidate_lookup(cst) ((cst)->revalidate == GF_NFS3_REVALIDATE)
+
typedef struct nfs3_local nfs3_call_state_t;
/* Queue of ops waiting for open fop to return. */