Lines Matching refs:dir

33 	iput(data->dir);  in nfs_free_unlinkdata()
65 static void nfs_dec_sillycount(struct inode *dir) in nfs_dec_sillycount() argument
67 struct nfs_inode *nfsi = NFS_I(dir); in nfs_dec_sillycount()
81 struct inode *dir = data->dir; in nfs_async_unlink_done() local
84 if (!NFS_PROTO(dir)->unlink_done(task, dir)) in nfs_async_unlink_done()
98 struct super_block *sb = data->dir->i_sb; in nfs_async_unlink_release()
100 nfs_dec_sillycount(data->dir); in nfs_async_unlink_release()
108 NFS_PROTO(data->dir)->unlink_rpc_prepare(task, data); in nfs_unlink_prepare()
117 static int nfs_do_call_unlink(struct dentry *parent, struct inode *dir, struct nfs_unlinkdata *data) in nfs_do_call_unlink() argument
155 nfs_dec_sillycount(dir); in nfs_do_call_unlink()
165 data->dir = igrab(dir); in nfs_do_call_unlink()
166 if (!data->dir) { in nfs_do_call_unlink()
167 nfs_dec_sillycount(dir); in nfs_do_call_unlink()
170 nfs_sb_active(dir->i_sb); in nfs_do_call_unlink()
171 data->args.fh = NFS_FH(dir); in nfs_do_call_unlink()
174 NFS_PROTO(dir)->unlink_setup(&msg, dir); in nfs_do_call_unlink()
176 task_setup_data.rpc_client = NFS_CLIENT(dir); in nfs_do_call_unlink()
186 struct inode *dir; in nfs_call_unlink() local
193 dir = d_inode(parent); in nfs_call_unlink()
195 spin_lock(&dir->i_lock); in nfs_call_unlink()
196 if (atomic_inc_not_zero(&NFS_I(dir)->silly_count) == 0) { in nfs_call_unlink()
198 hlist_add_head(&data->list, &NFS_I(dir)->silly_list); in nfs_call_unlink()
199 spin_unlock(&dir->i_lock); in nfs_call_unlink()
203 spin_unlock(&dir->i_lock); in nfs_call_unlink()
204 ret = nfs_do_call_unlink(parent, dir, data); in nfs_call_unlink()
227 struct inode *dir = d_inode(dentry); in nfs_unblock_sillyrename() local
228 struct nfs_inode *nfsi = NFS_I(dir); in nfs_unblock_sillyrename()
232 spin_lock(&dir->i_lock); in nfs_unblock_sillyrename()
238 spin_unlock(&dir->i_lock); in nfs_unblock_sillyrename()
239 if (nfs_do_call_unlink(dentry, dir, data) == 0) in nfs_unblock_sillyrename()
241 spin_lock(&dir->i_lock); in nfs_unblock_sillyrename()
243 spin_unlock(&dir->i_lock); in nfs_unblock_sillyrename()
252 nfs_async_unlink(struct inode *dir, struct dentry *dentry) in nfs_async_unlink() argument
513 nfs_sillyrename(struct inode *dir, struct dentry *dentry) in nfs_sillyrename() argument
524 nfs_inc_stats(dir, NFSIOS_SILLYRENAME); in nfs_sillyrename()
562 error = nfs_async_unlink(dir, dentry); in nfs_sillyrename()
575 task = nfs_async_rename(dir, dir, dentry, sdentry, in nfs_sillyrename()
590 nfs_set_verifier(dentry, nfs_save_change_attribute(dir)); in nfs_sillyrename()