Lines Matching refs:current_fh
85 struct dentry *dentry = cstate->current_fh.fh_dentry; in check_attr_support()
86 struct svc_export *exp = cstate->current_fh.fh_export; in check_attr_support()
142 do_open_permission(struct svc_rqst *rqstp, struct svc_fh *current_fh, struct nfsd4_open *open, int … in do_open_permission() argument
158 return fh_verify(rqstp, current_fh, S_IFREG, accmode); in do_open_permission()
420 struct svc_fh *current_fh = &cstate->current_fh; in do_open_lookup() local
447 status = nfsd4_create_file(rqstp, current_fh, *resfh, open); in do_open_lookup()
459 status = nfsd_lookup(rqstp, current_fh, in do_open_lookup()
465 status = fh_fill_both_attrs(current_fh); in do_open_lookup()
479 set_change_info(&open->op_cinfo, current_fh); in do_open_lookup()
487 struct svc_fh *current_fh = &cstate->current_fh; in do_open_fhandle() local
496 nfsd4_set_open_owner_reply_cache(cstate, open, current_fh); in do_open_fhandle()
512 return do_open_permission(rqstp, current_fh, open, accmode); in do_open_fhandle()
564 fh_put(&cstate->current_fh); in nfsd4_open()
565 fh_copy_shallow(&cstate->current_fh.fh_handle, in nfsd4_open()
567 status = fh_verify(rqstp, &cstate->current_fh, 0, NFSD_MAY_NOP); in nfsd4_open()
613 resfh = &cstate->current_fh; in nfsd4_open()
635 if (resfh && resfh != &cstate->current_fh) { in nfsd4_open()
636 fh_dup2(&cstate->current_fh, resfh); in nfsd4_open()
670 u->getfh = &cstate->current_fh; in nfsd4_getfh()
681 fh_put(&cstate->current_fh); in nfsd4_putfh()
682 cstate->current_fh.fh_handle.fh_size = putfh->pf_fhlen; in nfsd4_putfh()
683 memcpy(&cstate->current_fh.fh_handle.fh_raw, putfh->pf_fhval, in nfsd4_putfh()
685 ret = fh_verify(rqstp, &cstate->current_fh, 0, NFSD_MAY_BYPASS_GSS); in nfsd4_putfh()
688 SET_FH_FLAG(&cstate->current_fh, NFSD4_FH_FOREIGN); in nfsd4_putfh()
699 fh_put(&cstate->current_fh); in nfsd4_putrootfh()
701 return exp_pseudoroot(rqstp, &cstate->current_fh); in nfsd4_putrootfh()
711 fh_dup2(&cstate->current_fh, &cstate->save_fh); in nfsd4_restorefh()
723 fh_dup2(&cstate->save_fh, &cstate->current_fh); in nfsd4_savefh()
750 return nfsd_access(rqstp, &cstate->current_fh, &access->ac_resp_access, in nfsd4_access()
771 status = nfsd_file_acquire(rqstp, &cstate->current_fh, NFSD_MAY_WRITE | in nfsd4_commit()
776 status = nfsd_commit(rqstp, &cstate->current_fh, nf, commit->co_offset, in nfsd4_commit()
798 status = fh_verify(rqstp, &cstate->current_fh, S_IFDIR, NFSD_MAY_NOP); in nfsd4_create()
811 status = nfsd_symlink(rqstp, &cstate->current_fh, in nfsd4_create()
822 status = nfsd_create(rqstp, &cstate->current_fh, in nfsd4_create()
833 status = nfsd_create(rqstp, &cstate->current_fh, in nfsd4_create()
839 status = nfsd_create(rqstp, &cstate->current_fh, in nfsd4_create()
845 status = nfsd_create(rqstp, &cstate->current_fh, in nfsd4_create()
852 status = nfsd_create(rqstp, &cstate->current_fh, in nfsd4_create()
868 set_change_info(&create->cr_cinfo, &cstate->current_fh); in nfsd4_create()
869 fh_dup2(&cstate->current_fh, &resfh); in nfsd4_create()
885 status = fh_verify(rqstp, &cstate->current_fh, 0, NFSD_MAY_NOP); in nfsd4_getattr()
896 getattr->ga_fhp = &cstate->current_fh; in nfsd4_getattr()
907 status = nfsd_link(rqstp, &cstate->current_fh, in nfsd4_link()
910 set_change_info(&link->li_cinfo, &cstate->current_fh); in nfsd4_link()
935 return nfsd4_do_lookupp(rqstp, &cstate->current_fh); in nfsd4_lookupp()
942 return nfsd_lookup(rqstp, &cstate->current_fh, in nfsd4_lookup()
944 &cstate->current_fh); in nfsd4_lookup()
956 trace_nfsd_read_start(rqstp, &cstate->current_fh, in nfsd4_read()
977 status = nfs4_preprocess_stateid_op(rqstp, cstate, &cstate->current_fh, in nfsd4_read()
982 read->rd_fhp = &cstate->current_fh; in nfsd4_read()
1018 readdir->rd_fhp = &cstate->current_fh; in nfsd4_readdir()
1027 u->readlink.rl_fhp = &cstate->current_fh; in nfsd4_readlink()
1040 status = nfsd_unlink(rqstp, &cstate->current_fh, 0, in nfsd4_remove()
1043 set_change_info(&remove->rm_cinfo, &cstate->current_fh); in nfsd4_remove()
1057 rename->rn_snamelen, &cstate->current_fh, in nfsd4_rename()
1062 set_change_info(&rename->rn_tinfo, &cstate->current_fh); in nfsd4_rename()
1075 err = fh_verify(rqstp, &cstate->current_fh, S_IFDIR, NFSD_MAY_EXEC); in nfsd4_secinfo()
1078 err = nfsd_lookup_dentry(rqstp, &cstate->current_fh, in nfsd4_secinfo()
1091 fh_put(&cstate->current_fh); in nfsd4_secinfo()
1105 err = nfsd4_do_lookupp(rqstp, &cstate->current_fh); in nfsd4_secinfo_no_name()
1113 u->secinfo_no_name.sin_exp = exp_get(cstate->current_fh.fh_export); in nfsd4_secinfo_no_name()
1114 fh_put(&cstate->current_fh); in nfsd4_secinfo_no_name()
1147 &cstate->current_fh, &setattr->sa_stateid, in nfsd4_setattr()
1152 err = fh_want_write(&cstate->current_fh); in nfsd4_setattr()
1162 inode = cstate->current_fh.fh_dentry->d_inode; in nfsd4_setattr()
1168 status = nfsd_setattr(rqstp, &cstate->current_fh, &attrs, in nfsd4_setattr()
1176 fh_drop_write(&cstate->current_fh); in nfsd4_setattr()
1196 trace_nfsd_write_start(rqstp, &cstate->current_fh, in nfsd4_write()
1198 status = nfs4_preprocess_stateid_op(rqstp, cstate, &cstate->current_fh, in nfsd4_write()
1208 status = nfsd_vfs_write(rqstp, &cstate->current_fh, nf, in nfsd4_write()
1215 trace_nfsd_write_done(rqstp, &cstate->current_fh, in nfsd4_write()
1235 status = nfs4_preprocess_stateid_op(rqstp, cstate, &cstate->current_fh, in nfsd4_verify_copy()
1273 EX_ISSYNC(cstate->current_fh.fh_export)); in nfsd4_clone()
1517 status = nfs4_preprocess_stateid_op(rqstp, cstate, &cstate->current_fh, in nfsd4_setup_inter_ssc()
1816 memcpy(©->fh, &cstate->current_fh.fh_handle, in nfsd4_copy()
1926 status = nfs4_preprocess_stateid_op(rqstp, cstate, &cstate->current_fh, in nfsd4_copy_notify()
1966 status = nfs4_preprocess_stateid_op(rqstp, cstate, &cstate->current_fh, in nfsd4_fallocate()
1972 status = nfsd4_vfs_fallocate(rqstp, &cstate->current_fh, nf->nf_file, in nfsd4_fallocate()
2025 status = nfs4_preprocess_stateid_op(rqstp, cstate, &cstate->current_fh, in nfsd4_seek()
2071 status = fh_verify(rqstp, &cstate->current_fh, 0, NFSD_MAY_NOP); in _nfsd4_verify()
2094 status = nfsd4_encode_fattr_to_buf(&p, count, &cstate->current_fh, in _nfsd4_verify()
2095 cstate->current_fh.fh_export, in _nfsd4_verify()
2096 cstate->current_fh.fh_dentry, in _nfsd4_verify()
2217 struct svc_fh *current_fh = &cstate->current_fh; in nfsd4_layoutget() local
2237 nfserr = fh_verify(rqstp, current_fh, 0, accmode); in nfsd4_layoutget()
2242 ops = nfsd4_layout_verify(current_fh->fh_export, lgp->lg_layout_type); in nfsd4_layoutget()
2278 nfserr = ops->proc_layoutget(d_inode(current_fh->fh_dentry), in nfsd4_layoutget()
2279 current_fh, lgp); in nfsd4_layoutget()
2304 struct svc_fh *current_fh = &cstate->current_fh; in nfsd4_layoutcommit() local
2311 nfserr = fh_verify(rqstp, current_fh, 0, NFSD_MAY_WRITE); in nfsd4_layoutcommit()
2316 ops = nfsd4_layout_verify(current_fh->fh_export, lcp->lc_layout_type); in nfsd4_layoutcommit()
2319 inode = d_inode(current_fh->fh_dentry); in nfsd4_layoutcommit()
2367 struct svc_fh *current_fh = &cstate->current_fh; in nfsd4_layoutreturn() local
2370 nfserr = fh_verify(rqstp, current_fh, 0, NFSD_MAY_NOP); in nfsd4_layoutreturn()
2375 if (!nfsd4_layout_verify(current_fh->fh_export, lrp->lr_layout_type)) in nfsd4_layoutreturn()
2415 return nfsd_getxattr(rqstp, &cstate->current_fh, in nfsd4_getxattr()
2430 ret = nfsd_setxattr(rqstp, &cstate->current_fh, setxattr->setxa_name, in nfsd4_setxattr()
2435 set_change_info(&setxattr->setxa_cinfo, &cstate->current_fh); in nfsd4_setxattr()
2448 return nfsd_listxattr(rqstp, &cstate->current_fh, in nfsd4_listxattrs()
2462 ret = nfsd_removexattr(rqstp, &cstate->current_fh, in nfsd4_removexattr()
2466 set_change_info(&removexattr->rmxa_cinfo, &cstate->current_fh); in nfsd4_removexattr()
2622 struct svc_fh *current_fh = &cstate->current_fh; in nfsd4_proc_compound() local
2639 fh_init(current_fh, NFS4_FHSIZE); in nfsd4_proc_compound()
2689 if (!current_fh->fh_dentry && in nfsd4_proc_compound()
2690 !HAS_FH_FLAG(current_fh, NFSD4_FH_FOREIGN)) { in nfsd4_proc_compound()
2695 } else if (current_fh->fh_export && in nfsd4_proc_compound()
2696 current_fh->fh_export->ex_fslocs.migrated && in nfsd4_proc_compound()
2702 fh_clear_pre_post_attrs(current_fh); in nfsd4_proc_compound()
2740 if (current_fh->fh_export && in nfsd4_proc_compound()
2742 op->status = check_nfsd_access(current_fh->fh_export, rqstp); in nfsd4_proc_compound()
2761 fh_put(current_fh); in nfsd4_proc_compound()