diff options
Diffstat (limited to 'include/linux/nfsd/state.h')
-rw-r--r-- | include/linux/nfsd/state.h | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/include/linux/nfsd/state.h b/include/linux/nfsd/state.h index 296e6429fc3b..fdaa84addadb 100644 --- a/include/linux/nfsd/state.h +++ b/include/linux/nfsd/state.h | |||
@@ -109,6 +109,8 @@ struct nfs4_callback { | |||
109 | struct rpc_clnt * cb_client; | 109 | struct rpc_clnt * cb_client; |
110 | }; | 110 | }; |
111 | 111 | ||
112 | #define HEXDIR_LEN 33 /* hex version of 16 byte md5 of cl_name plus '\0' */ | ||
113 | |||
112 | /* | 114 | /* |
113 | * struct nfs4_client - one per client. Clientids live here. | 115 | * struct nfs4_client - one per client. Clientids live here. |
114 | * o Each nfs4_client is hashed by clientid. | 116 | * o Each nfs4_client is hashed by clientid. |
@@ -126,6 +128,7 @@ struct nfs4_client { | |||
126 | struct list_head cl_del_perclnt; /* list: delegations */ | 128 | struct list_head cl_del_perclnt; /* list: delegations */ |
127 | struct list_head cl_lru; /* tail queue */ | 129 | struct list_head cl_lru; /* tail queue */ |
128 | struct xdr_netobj cl_name; /* id generated by client */ | 130 | struct xdr_netobj cl_name; /* id generated by client */ |
131 | char cl_recdir[HEXDIR_LEN]; /* recovery dir */ | ||
129 | nfs4_verifier cl_verifier; /* generated by client */ | 132 | nfs4_verifier cl_verifier; /* generated by client */ |
130 | time_t cl_time; /* time of last lease renewal */ | 133 | time_t cl_time; /* time of last lease renewal */ |
131 | u32 cl_addr; /* client ipaddress */ | 134 | u32 cl_addr; /* client ipaddress */ |
@@ -143,7 +146,7 @@ struct nfs4_client { | |||
143 | */ | 146 | */ |
144 | struct nfs4_client_reclaim { | 147 | struct nfs4_client_reclaim { |
145 | struct list_head cr_strhash; /* hash by cr_name */ | 148 | struct list_head cr_strhash; /* hash by cr_name */ |
146 | struct xdr_netobj cr_name; /* id generated by client */ | 149 | char cr_recdir[HEXDIR_LEN]; /* recover dir */ |
147 | }; | 150 | }; |
148 | 151 | ||
149 | static inline void | 152 | static inline void |
@@ -283,6 +286,7 @@ extern void nfs4_free_stateowner(struct kref *kref); | |||
283 | extern void nfsd4_probe_callback(struct nfs4_client *clp); | 286 | extern void nfsd4_probe_callback(struct nfs4_client *clp); |
284 | extern void nfsd4_cb_recall(struct nfs4_delegation *dp); | 287 | extern void nfsd4_cb_recall(struct nfs4_delegation *dp); |
285 | extern void nfs4_put_delegation(struct nfs4_delegation *dp); | 288 | extern void nfs4_put_delegation(struct nfs4_delegation *dp); |
289 | extern int nfs4_make_rec_clidname(char *clidname, struct xdr_netobj *clname); | ||
286 | 290 | ||
287 | static inline void | 291 | static inline void |
288 | nfs4_put_stateowner(struct nfs4_stateowner *so) | 292 | nfs4_put_stateowner(struct nfs4_stateowner *so) |