Lines Matching defs:dir

114 nfs4_label_init_security(struct inode *dir, struct dentry *dentry,
122 if (nfs_server_capable(dir, NFS_CAP_SECURITY_LABEL) == 0)
153 nfs4_label_init_security(struct inode *dir, struct dentry *dentry,
1259 nfs4_update_changeattr(struct inode *dir, struct nfs4_change_info *cinfo,
1262 spin_lock(&dir->i_lock);
1263 nfs4_update_changeattr_locked(dir, cinfo, timestamp, cache_validity);
1264 spin_unlock(&dir->i_lock);
1358 struct inode *dir = d_inode(parent);
1359 struct nfs_server *server = NFS_SERVER(dir);
1382 p->dir = parent;
1424 p->o_arg.fh = NFS_FH(dir);
1466 dput(p->dir);
2015 inode = nfs_fhget(data->dir->d_sb, &data->o_res.fh,
2390 struct nfs_server *server = NFS_SERVER(d_inode(data->dir));
2556 struct inode *dir = d_inode(data->dir);
2557 struct nfs_server *server = NFS_SERVER(dir);
2577 if (nfs_server_capable(dir, NFS_CAP_MOVEABLE))
2609 struct inode *dir = d_inode(data->dir);
2617 nfs_fattr_map_and_free_names(NFS_SERVER(dir), &data->f_attr);
2671 struct inode *dir = d_inode(data->dir);
2672 struct nfs_server *server = NFS_SERVER(dir);
2695 inode_peek_iversion_raw(dir) != o_res->cinfo.after)
2696 nfs4_update_changeattr(dir, &o_res->cinfo,
3045 struct inode *dir = d_inode(opendata->dir);
3051 dir_verifier = nfs_save_change_attribute(dir);
3092 dir_verifier = nfs_save_change_attribute(dir);
3123 static int _nfs4_do_open(struct inode *dir,
3131 struct nfs_server *server = NFS_SERVER(dir);
3221 static struct nfs4_state *nfs4_do_open(struct inode *dir,
3228 struct nfs_server *server = NFS_SERVER(dir);
3244 status = _nfs4_do_open(dir, ctx, flags, &c, opened);
3263 NFS_SERVER(dir)->nfs_client->cl_hostname);
3805 nfs4_atomic_open(struct inode *dir, struct nfs_open_context *ctx,
3811 label = nfs4_label_init_security(dir, ctx->dentry, attr, &l);
3814 state = nfs4_do_open(dir, ctx, open_flags, attr, label, opened);
4254 static int nfs4_get_referral(struct rpc_clnt *client, struct inode *dir,
4271 status = nfs4_proc_fs_locations(client, dir, name, locations, page);
4280 if (nfs_fsid_equal(&NFS_SERVER(dir)->fsid, &fattr->fsid)) {
4406 static int _nfs4_proc_lookup(struct rpc_clnt *clnt, struct inode *dir,
4410 struct nfs_server *server = NFS_SERVER(dir);
4414 .dir_fh = NFS_FH(dir),
4429 if (nfs_server_capable(dir, NFS_CAP_MOVEABLE))
4456 static int nfs4_proc_lookup_common(struct rpc_clnt **clnt, struct inode *dir,
4467 err = _nfs4_proc_lookup(client, dir, dentry, fhandle, fattr);
4468 trace_nfs4_lookup(dir, name, err);
4474 err = nfs4_get_referral(client, dir, name, fattr, fhandle);
4476 err = nfs4_handle_exception(NFS_SERVER(dir), err, &exception);
4482 client = nfs4_negotiate_security(client, dir, name);
4489 err = nfs4_handle_exception(NFS_SERVER(dir), err, &exception);
4502 static int nfs4_proc_lookup(struct inode *dir, struct dentry *dentry,
4506 struct rpc_clnt *client = NFS_CLIENT(dir);
4508 status = nfs4_proc_lookup_common(&client, dir, dentry, fhandle, fattr);
4509 if (client != NFS_CLIENT(dir)) {
4517 nfs4_proc_lookup_mountpoint(struct inode *dir, struct dentry *dentry,
4520 struct rpc_clnt *client = NFS_CLIENT(dir);
4523 status = nfs4_proc_lookup_common(&client, dir, dentry, fhandle, fattr);
4526 return (client == NFS_CLIENT(dir)) ? rpc_clone_client(client) : client;
4693 nfs4_proc_create(struct inode *dir, struct dentry *dentry, struct iattr *sattr,
4696 struct nfs_server *server = NFS_SERVER(dir);
4706 ilabel = nfs4_label_init_security(dir, dentry, sattr, &l);
4710 state = nfs4_do_open(dir, ctx, flags, sattr, ilabel, NULL);
4722 _nfs4_proc_remove(struct inode *dir, const struct qstr *name, u32 ftype)
4724 struct nfs_server *server = NFS_SERVER(dir);
4726 .fh = NFS_FH(dir),
4742 spin_lock(&dir->i_lock);
4744 if (ftype == NF4DIR && dir->i_nlink > 2)
4745 nfs4_dec_nlink_locked(dir);
4746 nfs4_update_changeattr_locked(dir, &res.cinfo, timestamp,
4748 spin_unlock(&dir->i_lock);
4753 static int nfs4_proc_remove(struct inode *dir, struct dentry *dentry)
4768 err = _nfs4_proc_remove(dir, &dentry->d_name, NF4REG);
4769 trace_nfs4_remove(dir, &dentry->d_name, err);
4770 err = nfs4_handle_exception(NFS_SERVER(dir), err,
4776 static int nfs4_proc_rmdir(struct inode *dir, const struct qstr *name)
4784 err = _nfs4_proc_remove(dir, name, NF4DIR);
4785 trace_nfs4_remove(dir, name, err);
4786 err = nfs4_handle_exception(NFS_SERVER(dir), err,
4819 static int nfs4_proc_unlink_done(struct rpc_task *task, struct inode *dir)
4830 nfs4_update_changeattr(dir, &res->cinfo,
4893 static int _nfs4_proc_link(struct inode *inode, struct inode *dir, const struct qstr *name)
4899 .dir_fh = NFS_FH(dir),
4922 nfs4_update_changeattr(dir, &res.cinfo, res.fattr->time_start,
4935 static int nfs4_proc_link(struct inode *inode, struct inode *dir, const struct qstr *name)
4943 _nfs4_proc_link(inode, dir, name),
4957 static struct nfs4_createdata *nfs4_alloc_createdata(struct inode *dir,
4964 struct nfs_server *server = NFS_SERVER(dir);
4973 data->arg.dir_fh = NFS_FH(dir);
4991 static int nfs4_do_create(struct inode *dir, struct dentry *dentry, struct nfs4_createdata *data)
4993 int status = nfs4_call_sync(NFS_SERVER(dir)->client, NFS_SERVER(dir), &data->msg,
4996 spin_lock(&dir->i_lock);
4999 nfs4_inc_nlink_locked(dir);
5000 nfs4_update_changeattr_locked(dir, &data->res.dir_cinfo,
5003 spin_unlock(&dir->i_lock);
5015 static int _nfs4_proc_symlink(struct inode *dir, struct dentry *dentry,
5026 data = nfs4_alloc_createdata(dir, &dentry->d_name, sattr, NF4LNK);
5035 status = nfs4_do_create(dir, dentry, data);
5042 static int nfs4_proc_symlink(struct inode *dir, struct dentry *dentry,
5051 label = nfs4_label_init_security(dir, dentry, sattr, &l);
5054 err = _nfs4_proc_symlink(dir, dentry, page, len, sattr, label);
5055 trace_nfs4_symlink(dir, &dentry->d_name, err);
5056 err = nfs4_handle_exception(NFS_SERVER(dir), err,
5064 static int _nfs4_proc_mkdir(struct inode *dir, struct dentry *dentry,
5070 data = nfs4_alloc_createdata(dir, &dentry->d_name, sattr, NF4DIR);
5075 status = nfs4_do_create(dir, dentry, data);
5082 static int nfs4_proc_mkdir(struct inode *dir, struct dentry *dentry,
5085 struct nfs_server *server = NFS_SERVER(dir);
5092 label = nfs4_label_init_security(dir, dentry, sattr, &l);
5097 err = _nfs4_proc_mkdir(dir, dentry, sattr, label);
5098 trace_nfs4_mkdir(dir, &dentry->d_name, err);
5099 err = nfs4_handle_exception(NFS_SERVER(dir), err,
5110 struct inode *dir = d_inode(nr_arg->dentry);
5111 struct nfs_server *server = NFS_SERVER(dir);
5113 .fh = NFS_FH(dir),
5144 nfs_invalidate_atime(dir);
5166 static int _nfs4_proc_mknod(struct inode *dir, struct dentry *dentry,
5173 data = nfs4_alloc_createdata(dir, &dentry->d_name, sattr, NF4SOCK);
5194 status = nfs4_do_create(dir, dentry, data);
5201 static int nfs4_proc_mknod(struct inode *dir, struct dentry *dentry,
5204 struct nfs_server *server = NFS_SERVER(dir);
5211 label = nfs4_label_init_security(dir, dentry, sattr, &l);
5216 err = _nfs4_proc_mknod(dir, dentry, sattr, label, rdev);
5217 trace_nfs4_mknod(dir, &dentry->d_name, err);
5218 err = nfs4_handle_exception(NFS_SERVER(dir), err,
7976 static int _nfs4_proc_fs_locations(struct rpc_clnt *client, struct inode *dir,
7981 struct nfs_server *server = NFS_SERVER(dir);
7984 .dir_fh = NFS_FH(dir),
8006 if (NFS_SERVER(dir)->attr_bitmask[1] & FATTR4_WORD1_MOUNTED_ON_FILEID)
8019 int nfs4_proc_fs_locations(struct rpc_clnt *client, struct inode *dir,
8029 err = _nfs4_proc_fs_locations(client, dir, name,
8031 trace_nfs4_get_fs_locations(dir, name, err);
8032 err = nfs4_handle_exception(NFS_SERVER(dir), err,
8335 static int _nfs4_proc_secinfo(struct inode *dir, const struct qstr *name, struct nfs4_secinfo_flavors *flavors, bool use_integrity)
8338 struct rpc_clnt *clnt = NFS_SERVER(dir)->client;
8339 struct nfs_client *clp = NFS_SERVER(dir)->nfs_client;
8341 .dir_fh = NFS_FH(dir),
8353 .seq_server = NFS_SERVER(dir),
8386 int nfs4_proc_secinfo(struct inode *dir, const struct qstr *name,
8397 if (_nfs4_is_integrity_protected(NFS_SERVER(dir)->nfs_client))
8398 err = _nfs4_proc_secinfo(dir, name, flavors, true);
8407 err = _nfs4_proc_secinfo(dir, name, flavors, false);
8409 trace_nfs4_secinfo(dir, name, err);
8410 err = nfs4_handle_exception(NFS_SERVER(dir), err,
8461 if (args->dir == NFS4_CDFC4_FORE_OR_BOTH &&
8462 res->dir != NFS4_CDFS4_BOTH) {
8488 .dir = NFS4_CDFC4_FORE_OR_BOTH,
8510 args.dir = NFS4_CDFC4_FORE;
8514 args.dir = NFS4_CDFC4_FORE;
8529 if ((res.dir & args.dir) != res.dir || res.dir == 0) {