Lines Matching refs:fhp
48 decode_fh(__be32 *p, struct svc_fh *fhp) in decode_fh() argument
51 fh_init(fhp, NFS3_FHSIZE); in decode_fh()
56 memcpy(&fhp->fh_handle.fh_base, p, size); in decode_fh()
57 fhp->fh_handle.fh_size = size; in decode_fh()
62 __be32 *nfs3svc_decode_fh(__be32 *p, struct svc_fh *fhp) in nfs3svc_decode_fh() argument
64 return decode_fh(p, fhp); in nfs3svc_decode_fh()
68 encode_fh(__be32 *p, struct svc_fh *fhp) in encode_fh() argument
70 unsigned int size = fhp->fh_handle.fh_size; in encode_fh()
73 memcpy(p, &fhp->fh_handle.fh_base, size); in encode_fh()
142 static __be32 *encode_fsid(__be32 *p, struct svc_fh *fhp) in encode_fsid() argument
145 switch(fsid_source(fhp)) { in encode_fsid()
149 (d_inode(fhp->fh_dentry)->i_sb->s_dev)); in encode_fsid()
152 p = xdr_encode_hyper(p, (u64) fhp->fh_export->ex_fsid); in encode_fsid()
155 f = ((u64*)fhp->fh_export->ex_uuid)[0]; in encode_fsid()
156 f ^= ((u64*)fhp->fh_export->ex_uuid)[1]; in encode_fsid()
164 encode_fattr3(struct svc_rqst *rqstp, __be32 *p, struct svc_fh *fhp, in encode_fattr3() argument
180 p = encode_fsid(p, fhp); in encode_fattr3()
190 encode_saved_post_attr(struct svc_rqst *rqstp, __be32 *p, struct svc_fh *fhp) in encode_saved_post_attr() argument
194 return encode_fattr3(rqstp, p, fhp, &fhp->fh_post_attr); in encode_saved_post_attr()
203 encode_post_op_attr(struct svc_rqst *rqstp, __be32 *p, struct svc_fh *fhp) in encode_post_op_attr() argument
205 struct dentry *dentry = fhp->fh_dentry; in encode_post_op_attr()
210 err = fh_getattr(fhp, &stat); in encode_post_op_attr()
214 return encode_fattr3(rqstp, p, fhp, &stat); in encode_post_op_attr()
223 nfs3svc_encode_post_op_attr(struct svc_rqst *rqstp, __be32 *p, struct svc_fh *fhp) in nfs3svc_encode_post_op_attr() argument
225 return encode_post_op_attr(rqstp, p, fhp); in nfs3svc_encode_post_op_attr()
232 encode_wcc_data(struct svc_rqst *rqstp, __be32 *p, struct svc_fh *fhp) in encode_wcc_data() argument
234 struct dentry *dentry = fhp->fh_dentry; in encode_wcc_data()
236 if (dentry && d_really_is_positive(dentry) && fhp->fh_post_saved) { in encode_wcc_data()
237 if (fhp->fh_pre_saved) { in encode_wcc_data()
239 p = xdr_encode_hyper(p, (u64) fhp->fh_pre_size); in encode_wcc_data()
240 p = encode_time3(p, &fhp->fh_pre_mtime); in encode_wcc_data()
241 p = encode_time3(p, &fhp->fh_pre_ctime); in encode_wcc_data()
245 return encode_saved_post_attr(rqstp, p, fhp); in encode_wcc_data()
249 return encode_post_op_attr(rqstp, p, fhp); in encode_wcc_data()
255 void fill_post_wcc(struct svc_fh *fhp) in fill_post_wcc() argument
259 if (fhp->fh_post_saved) in fill_post_wcc()
262 err = fh_getattr(fhp, &fhp->fh_post_attr); in fill_post_wcc()
263 fhp->fh_post_change = d_inode(fhp->fh_dentry)->i_version; in fill_post_wcc()
265 fhp->fh_post_saved = false; in fill_post_wcc()
267 fhp->fh_post_attr.ctime = d_inode(fhp->fh_dentry)->i_ctime; in fill_post_wcc()
269 fhp->fh_post_saved = true; in fill_post_wcc()
807 compose_entry_fh(struct nfsd3_readdirres *cd, struct svc_fh *fhp, in compose_entry_fh() argument
835 rv = fh_compose(fhp, exp, dchild, &cd->fh); in compose_entry_fh()