Lines Matching refs:current_fh
87 struct dentry *dentry = cstate->current_fh.fh_dentry; in check_attr_support()
88 struct svc_export *exp = cstate->current_fh.fh_export; in check_attr_support()
144 do_open_permission(struct svc_rqst *rqstp, struct svc_fh *current_fh, struct nfsd4_open *open, int … in do_open_permission() argument
160 return fh_verify(rqstp, current_fh, S_IFREG, accmode); in do_open_permission()
423 struct svc_fh *current_fh = &cstate->current_fh; in do_open_lookup() local
450 status = nfsd4_create_file(rqstp, current_fh, *resfh, open); in do_open_lookup()
462 status = nfsd_lookup(rqstp, current_fh, in do_open_lookup()
468 status = fh_fill_both_attrs(current_fh); in do_open_lookup()
482 set_change_info(&open->op_cinfo, current_fh); in do_open_lookup()
490 struct svc_fh *current_fh = &cstate->current_fh; in do_open_fhandle() local
499 nfsd4_set_open_owner_reply_cache(cstate, open, current_fh); in do_open_fhandle()
515 return do_open_permission(rqstp, current_fh, open, accmode); in do_open_fhandle()
567 fh_put(&cstate->current_fh); in nfsd4_open()
568 fh_copy_shallow(&cstate->current_fh.fh_handle, in nfsd4_open()
570 status = fh_verify(rqstp, &cstate->current_fh, 0, NFSD_MAY_NOP); in nfsd4_open()
616 resfh = &cstate->current_fh; in nfsd4_open()
638 if (resfh && resfh != &cstate->current_fh) { in nfsd4_open()
639 fh_dup2(&cstate->current_fh, resfh); in nfsd4_open()
673 u->getfh = &cstate->current_fh; in nfsd4_getfh()
684 fh_put(&cstate->current_fh); in nfsd4_putfh()
685 cstate->current_fh.fh_handle.fh_size = putfh->pf_fhlen; in nfsd4_putfh()
686 memcpy(&cstate->current_fh.fh_handle.fh_raw, putfh->pf_fhval, in nfsd4_putfh()
688 ret = fh_verify(rqstp, &cstate->current_fh, 0, NFSD_MAY_BYPASS_GSS); in nfsd4_putfh()
691 SET_FH_FLAG(&cstate->current_fh, NFSD4_FH_FOREIGN); in nfsd4_putfh()
702 fh_put(&cstate->current_fh); in nfsd4_putrootfh()
704 return exp_pseudoroot(rqstp, &cstate->current_fh); in nfsd4_putrootfh()
714 fh_dup2(&cstate->current_fh, &cstate->save_fh); in nfsd4_restorefh()
726 fh_dup2(&cstate->save_fh, &cstate->current_fh); in nfsd4_savefh()
753 return nfsd_access(rqstp, &cstate->current_fh, &access->ac_resp_access, in nfsd4_access()
765 status = nfsd_file_acquire(rqstp, &cstate->current_fh, NFSD_MAY_WRITE | in nfsd4_commit()
770 status = nfsd_commit(rqstp, &cstate->current_fh, nf, commit->co_offset, in nfsd4_commit()
792 status = fh_verify(rqstp, &cstate->current_fh, S_IFDIR, NFSD_MAY_NOP); in nfsd4_create()
805 status = nfsd_symlink(rqstp, &cstate->current_fh, in nfsd4_create()
816 status = nfsd_create(rqstp, &cstate->current_fh, in nfsd4_create()
827 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()
846 status = nfsd_create(rqstp, &cstate->current_fh, in nfsd4_create()
862 set_change_info(&create->cr_cinfo, &cstate->current_fh); in nfsd4_create()
863 fh_dup2(&cstate->current_fh, &resfh); in nfsd4_create()
879 status = fh_verify(rqstp, &cstate->current_fh, 0, NFSD_MAY_NOP); in nfsd4_getattr()
890 getattr->ga_fhp = &cstate->current_fh; in nfsd4_getattr()
901 status = nfsd_link(rqstp, &cstate->current_fh, in nfsd4_link()
904 set_change_info(&link->li_cinfo, &cstate->current_fh); in nfsd4_link()
929 return nfsd4_do_lookupp(rqstp, &cstate->current_fh); in nfsd4_lookupp()
936 return nfsd_lookup(rqstp, &cstate->current_fh, in nfsd4_lookup()
938 &cstate->current_fh); in nfsd4_lookup()
950 trace_nfsd_read_start(rqstp, &cstate->current_fh, in nfsd4_read()
974 status = nfs4_preprocess_stateid_op(rqstp, cstate, &cstate->current_fh, in nfsd4_read()
979 read->rd_fhp = &cstate->current_fh; in nfsd4_read()
1015 readdir->rd_fhp = &cstate->current_fh; in nfsd4_readdir()
1024 u->readlink.rl_fhp = &cstate->current_fh; in nfsd4_readlink()
1037 status = nfsd_unlink(rqstp, &cstate->current_fh, 0, in nfsd4_remove()
1040 set_change_info(&remove->rm_cinfo, &cstate->current_fh); in nfsd4_remove()
1054 rename->rn_snamelen, &cstate->current_fh, in nfsd4_rename()
1059 set_change_info(&rename->rn_tinfo, &cstate->current_fh); in nfsd4_rename()
1072 err = fh_verify(rqstp, &cstate->current_fh, S_IFDIR, NFSD_MAY_EXEC); in nfsd4_secinfo()
1075 err = nfsd_lookup_dentry(rqstp, &cstate->current_fh, in nfsd4_secinfo()
1088 fh_put(&cstate->current_fh); in nfsd4_secinfo()
1102 err = nfsd4_do_lookupp(rqstp, &cstate->current_fh); in nfsd4_secinfo_no_name()
1110 u->secinfo_no_name.sin_exp = exp_get(cstate->current_fh.fh_export); in nfsd4_secinfo_no_name()
1111 fh_put(&cstate->current_fh); in nfsd4_secinfo_no_name()
1154 &cstate->current_fh, &setattr->sa_stateid, in nfsd4_setattr()
1175 err = fh_want_write(&cstate->current_fh); in nfsd4_setattr()
1185 inode = cstate->current_fh.fh_dentry->d_inode; in nfsd4_setattr()
1191 save_no_wcc = cstate->current_fh.fh_no_wcc; in nfsd4_setattr()
1192 cstate->current_fh.fh_no_wcc = true; in nfsd4_setattr()
1193 status = nfsd_setattr(rqstp, &cstate->current_fh, &attrs, NULL); in nfsd4_setattr()
1194 cstate->current_fh.fh_no_wcc = save_no_wcc; in nfsd4_setattr()
1201 fh_drop_write(&cstate->current_fh); in nfsd4_setattr()
1221 trace_nfsd_write_start(rqstp, &cstate->current_fh, in nfsd4_write()
1223 status = nfs4_preprocess_stateid_op(rqstp, cstate, &cstate->current_fh, in nfsd4_write()
1233 status = nfsd_vfs_write(rqstp, &cstate->current_fh, nf, in nfsd4_write()
1240 trace_nfsd_write_done(rqstp, &cstate->current_fh, in nfsd4_write()
1260 status = nfs4_preprocess_stateid_op(rqstp, cstate, &cstate->current_fh, in nfsd4_verify_copy()
1298 EX_ISSYNC(cstate->current_fh.fh_export)); in nfsd4_clone()
1612 status = nfs4_preprocess_stateid_op(rqstp, cstate, &cstate->current_fh, in nfsd4_setup_inter_ssc()
1942 memcpy(©->fh, &cstate->current_fh.fh_handle, in nfsd4_copy()
2059 status = nfs4_preprocess_stateid_op(rqstp, cstate, &cstate->current_fh, in nfsd4_copy_notify()
2101 status = nfs4_preprocess_stateid_op(rqstp, cstate, &cstate->current_fh, in nfsd4_fallocate()
2107 status = nfsd4_vfs_fallocate(rqstp, &cstate->current_fh, nf->nf_file, in nfsd4_fallocate()
2165 status = nfs4_preprocess_stateid_op(rqstp, cstate, &cstate->current_fh, in nfsd4_seek()
2211 status = fh_verify(rqstp, &cstate->current_fh, 0, NFSD_MAY_NOP); in _nfsd4_verify()
2234 status = nfsd4_encode_fattr_to_buf(&p, count, &cstate->current_fh, in _nfsd4_verify()
2235 cstate->current_fh.fh_export, in _nfsd4_verify()
2236 cstate->current_fh.fh_dentry, in _nfsd4_verify()
2382 struct svc_fh *current_fh = &cstate->current_fh; in nfsd4_layoutget() local
2402 nfserr = fh_verify(rqstp, current_fh, 0, accmode); in nfsd4_layoutget()
2407 ops = nfsd4_layout_verify(current_fh->fh_export, lgp->lg_layout_type); in nfsd4_layoutget()
2443 nfserr = ops->proc_layoutget(d_inode(current_fh->fh_dentry), in nfsd4_layoutget()
2444 current_fh, lgp); in nfsd4_layoutget()
2469 struct svc_fh *current_fh = &cstate->current_fh; in nfsd4_layoutcommit() local
2476 nfserr = fh_verify(rqstp, current_fh, 0, in nfsd4_layoutcommit()
2482 ops = nfsd4_layout_verify(current_fh->fh_export, lcp->lc_layout_type); in nfsd4_layoutcommit()
2485 inode = d_inode(current_fh->fh_dentry); in nfsd4_layoutcommit()
2533 struct svc_fh *current_fh = &cstate->current_fh; in nfsd4_layoutreturn() local
2536 nfserr = fh_verify(rqstp, current_fh, 0, NFSD_MAY_NOP); in nfsd4_layoutreturn()
2541 if (!nfsd4_layout_verify(current_fh->fh_export, lrp->lr_layout_type)) in nfsd4_layoutreturn()
2581 return nfsd_getxattr(rqstp, &cstate->current_fh, in nfsd4_getxattr()
2596 ret = nfsd_setxattr(rqstp, &cstate->current_fh, setxattr->setxa_name, in nfsd4_setxattr()
2601 set_change_info(&setxattr->setxa_cinfo, &cstate->current_fh); in nfsd4_setxattr()
2614 return nfsd_listxattr(rqstp, &cstate->current_fh, in nfsd4_listxattrs()
2628 ret = nfsd_removexattr(rqstp, &cstate->current_fh, in nfsd4_removexattr()
2632 set_change_info(&removexattr->rmxa_cinfo, &cstate->current_fh); in nfsd4_removexattr()
2788 struct svc_fh *current_fh = &cstate->current_fh; in nfsd4_proc_compound() local
2805 fh_init(current_fh, NFS4_FHSIZE); in nfsd4_proc_compound()
2855 if (!current_fh->fh_dentry && in nfsd4_proc_compound()
2856 !HAS_FH_FLAG(current_fh, NFSD4_FH_FOREIGN)) { in nfsd4_proc_compound()
2861 } else if (current_fh->fh_export && in nfsd4_proc_compound()
2862 current_fh->fh_export->ex_fslocs.migrated && in nfsd4_proc_compound()
2868 fh_clear_pre_post_attrs(current_fh); in nfsd4_proc_compound()
2907 if (current_fh->fh_export && in nfsd4_proc_compound()
2909 op->status = check_nfsd_access(current_fh->fh_export, rqstp, false); in nfsd4_proc_compound()
2928 fh_put(current_fh); in nfsd4_proc_compound()