From bb1e07b7f42e7db415527852e98fcc1cbf2e1285 Mon Sep 17 00:00:00 2001 From: Anand Avati Date: Fri, 13 Jan 2012 23:17:07 +0530 Subject: nfs: changes for using nameless lookup and anonymous FDs - Use gfid to create filehandle instead of encoding path components - Utilize nameless lookups of GFID for deep resolution instead of crawling the namespace with component hints - Use anonymous FDs for file based operations - Do away with fdcaching code for files and dirs Change-Id: Ic48fb23370b25d183f7e1fc1cc5dffa9d5bab3fb BUG: 781318 Reviewed-on: http://review.gluster.com/2645 Tested-by: Gluster Build System Reviewed-by: Anand Avati --- xlators/nfs/server/src/nfs3.h | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'xlators/nfs/server/src/nfs3.h') diff --git a/xlators/nfs/server/src/nfs3.h b/xlators/nfs/server/src/nfs3.h index a2c67ee6e..3e99184c7 100644 --- a/xlators/nfs/server/src/nfs3.h +++ b/xlators/nfs/server/src/nfs3.h @@ -196,6 +196,7 @@ struct nfs3_local { mode_t mode; /* NFSv3 FH resolver state */ + int hardresolved; struct nfs3_fh resolvefh; loc_t resolvedloc; int resolve_ret; @@ -211,6 +212,9 @@ struct nfs3_local { #define nfs3_is_revalidate_lookup(cst) ((cst)->lookuptype == GF_NFS3_REVALIDATE) #define nfs3_lookup_op(cst) (rpcsvc_request_procnum(cst->req) == NFS3_LOOKUP) +#define nfs3_create_op(cst) (rpcsvc_request_procnum(cst->req) == NFS3_CREATE) +#define nfs3_create_exclusive_op(cst) ((cst)->createmode == EXCLUSIVE) + typedef struct nfs3_local nfs3_call_state_t; /* Queue of ops waiting for open fop to return. */ -- cgit