Lines Matching defs:current_fh

85 	struct dentry *dentry = cstate->current_fh.fh_dentry;
86 struct svc_export *exp = cstate->current_fh.fh_export;
142 do_open_permission(struct svc_rqst *rqstp, struct svc_fh *current_fh, struct nfsd4_open *open, int accmode)
158 return fh_verify(rqstp, current_fh, S_IFREG, accmode);
420 struct svc_fh *current_fh = &cstate->current_fh;
447 status = nfsd4_create_file(rqstp, current_fh, *resfh, open);
459 status = nfsd_lookup(rqstp, current_fh,
465 status = fh_fill_both_attrs(current_fh);
479 set_change_info(&open->op_cinfo, current_fh);
487 struct svc_fh *current_fh = &cstate->current_fh;
496 nfsd4_set_open_owner_reply_cache(cstate, open, current_fh);
512 return do_open_permission(rqstp, current_fh, open, accmode);
564 fh_put(&cstate->current_fh);
565 fh_copy_shallow(&cstate->current_fh.fh_handle,
567 status = fh_verify(rqstp, &cstate->current_fh, 0, NFSD_MAY_NOP);
613 resfh = &cstate->current_fh;
635 if (resfh && resfh != &cstate->current_fh) {
636 fh_dup2(&cstate->current_fh, resfh);
670 u->getfh = &cstate->current_fh;
681 fh_put(&cstate->current_fh);
682 cstate->current_fh.fh_handle.fh_size = putfh->pf_fhlen;
683 memcpy(&cstate->current_fh.fh_handle.fh_raw, putfh->pf_fhval,
685 ret = fh_verify(rqstp, &cstate->current_fh, 0, NFSD_MAY_BYPASS_GSS);
688 SET_FH_FLAG(&cstate->current_fh, NFSD4_FH_FOREIGN);
699 fh_put(&cstate->current_fh);
701 return exp_pseudoroot(rqstp, &cstate->current_fh);
711 fh_dup2(&cstate->current_fh, &cstate->save_fh);
723 fh_dup2(&cstate->save_fh, &cstate->current_fh);
750 return nfsd_access(rqstp, &cstate->current_fh, &access->ac_resp_access,
771 status = nfsd_file_acquire(rqstp, &cstate->current_fh, NFSD_MAY_WRITE |
776 status = nfsd_commit(rqstp, &cstate->current_fh, nf, commit->co_offset,
798 status = fh_verify(rqstp, &cstate->current_fh, S_IFDIR, NFSD_MAY_NOP);
811 status = nfsd_symlink(rqstp, &cstate->current_fh,
822 status = nfsd_create(rqstp, &cstate->current_fh,
833 status = nfsd_create(rqstp, &cstate->current_fh,
839 status = nfsd_create(rqstp, &cstate->current_fh,
845 status = nfsd_create(rqstp, &cstate->current_fh,
852 status = nfsd_create(rqstp, &cstate->current_fh,
868 set_change_info(&create->cr_cinfo, &cstate->current_fh);
869 fh_dup2(&cstate->current_fh, &resfh);
885 status = fh_verify(rqstp, &cstate->current_fh, 0, NFSD_MAY_NOP);
896 getattr->ga_fhp = &cstate->current_fh;
907 status = nfsd_link(rqstp, &cstate->current_fh,
910 set_change_info(&link->li_cinfo, &cstate->current_fh);
935 return nfsd4_do_lookupp(rqstp, &cstate->current_fh);
942 return nfsd_lookup(rqstp, &cstate->current_fh,
944 &cstate->current_fh);
956 trace_nfsd_read_start(rqstp, &cstate->current_fh,
980 status = nfs4_preprocess_stateid_op(rqstp, cstate, &cstate->current_fh,
985 read->rd_fhp = &cstate->current_fh;
1021 readdir->rd_fhp = &cstate->current_fh;
1030 u->readlink.rl_fhp = &cstate->current_fh;
1043 status = nfsd_unlink(rqstp, &cstate->current_fh, 0,
1046 set_change_info(&remove->rm_cinfo, &cstate->current_fh);
1060 rename->rn_snamelen, &cstate->current_fh,
1065 set_change_info(&rename->rn_tinfo, &cstate->current_fh);
1078 err = fh_verify(rqstp, &cstate->current_fh, S_IFDIR, NFSD_MAY_EXEC);
1081 err = nfsd_lookup_dentry(rqstp, &cstate->current_fh,
1094 fh_put(&cstate->current_fh);
1108 err = nfsd4_do_lookupp(rqstp, &cstate->current_fh);
1116 u->secinfo_no_name.sin_exp = exp_get(cstate->current_fh.fh_export);
1117 fh_put(&cstate->current_fh);
1151 &cstate->current_fh, &setattr->sa_stateid,
1156 err = fh_want_write(&cstate->current_fh);
1166 inode = cstate->current_fh.fh_dentry->d_inode;
1172 save_no_wcc = cstate->current_fh.fh_no_wcc;
1173 cstate->current_fh.fh_no_wcc = true;
1174 status = nfsd_setattr(rqstp, &cstate->current_fh, &attrs, NULL);
1175 cstate->current_fh.fh_no_wcc = save_no_wcc;
1182 fh_drop_write(&cstate->current_fh);
1202 trace_nfsd_write_start(rqstp, &cstate->current_fh,
1204 status = nfs4_preprocess_stateid_op(rqstp, cstate, &cstate->current_fh,
1214 status = nfsd_vfs_write(rqstp, &cstate->current_fh, nf,
1221 trace_nfsd_write_done(rqstp, &cstate->current_fh,
1241 status = nfs4_preprocess_stateid_op(rqstp, cstate, &cstate->current_fh,
1279 EX_ISSYNC(cstate->current_fh.fh_export));
1524 status = nfs4_preprocess_stateid_op(rqstp, cstate, &cstate->current_fh,
1831 memcpy(&copy->fh, &cstate->current_fh.fh_handle,
1942 status = nfs4_preprocess_stateid_op(rqstp, cstate, &cstate->current_fh,
1982 status = nfs4_preprocess_stateid_op(rqstp, cstate, &cstate->current_fh,
1988 status = nfsd4_vfs_fallocate(rqstp, &cstate->current_fh, nf->nf_file,
2041 status = nfs4_preprocess_stateid_op(rqstp, cstate, &cstate->current_fh,
2087 status = fh_verify(rqstp, &cstate->current_fh, 0, NFSD_MAY_NOP);
2110 status = nfsd4_encode_fattr_to_buf(&p, count, &cstate->current_fh,
2111 cstate->current_fh.fh_export,
2112 cstate->current_fh.fh_dentry,
2233 struct svc_fh *current_fh = &cstate->current_fh;
2253 nfserr = fh_verify(rqstp, current_fh, 0, accmode);
2258 ops = nfsd4_layout_verify(current_fh->fh_export, lgp->lg_layout_type);
2294 nfserr = ops->proc_layoutget(d_inode(current_fh->fh_dentry),
2295 current_fh, lgp);
2320 struct svc_fh *current_fh = &cstate->current_fh;
2327 nfserr = fh_verify(rqstp, current_fh, 0, NFSD_MAY_WRITE);
2332 ops = nfsd4_layout_verify(current_fh->fh_export, lcp->lc_layout_type);
2335 inode = d_inode(current_fh->fh_dentry);
2383 struct svc_fh *current_fh = &cstate->current_fh;
2386 nfserr = fh_verify(rqstp, current_fh, 0, NFSD_MAY_NOP);
2391 if (!nfsd4_layout_verify(current_fh->fh_export, lrp->lr_layout_type))
2431 return nfsd_getxattr(rqstp, &cstate->current_fh,
2446 ret = nfsd_setxattr(rqstp, &cstate->current_fh, setxattr->setxa_name,
2451 set_change_info(&setxattr->setxa_cinfo, &cstate->current_fh);
2464 return nfsd_listxattr(rqstp, &cstate->current_fh,
2478 ret = nfsd_removexattr(rqstp, &cstate->current_fh,
2482 set_change_info(&removexattr->rmxa_cinfo, &cstate->current_fh);
2638 struct svc_fh *current_fh = &cstate->current_fh;
2655 fh_init(current_fh, NFS4_FHSIZE);
2705 if (!current_fh->fh_dentry &&
2706 !HAS_FH_FLAG(current_fh, NFSD4_FH_FOREIGN)) {
2711 } else if (current_fh->fh_export &&
2712 current_fh->fh_export->ex_fslocs.migrated &&
2718 fh_clear_pre_post_attrs(current_fh);
2756 if (current_fh->fh_export &&
2758 op->status = check_nfsd_access(current_fh->fh_export, rqstp);
2777 fh_put(current_fh);