Lines Matching refs:op
15 static void afs_silly_rename_success(struct afs_operation *op) in afs_silly_rename_success() argument
17 _enter("op=%08x", op->debug_id); in afs_silly_rename_success()
19 afs_check_dir_conflict(op, &op->file[0]); in afs_silly_rename_success()
20 afs_vnode_commit_status(op, &op->file[0]); in afs_silly_rename_success()
23 static void afs_silly_rename_edit_dir(struct afs_operation *op) in afs_silly_rename_edit_dir() argument
25 struct afs_vnode_param *dvp = &op->file[0]; in afs_silly_rename_edit_dir()
27 struct afs_vnode *vnode = AFS_FS_I(d_inode(op->dentry)); in afs_silly_rename_edit_dir()
28 struct dentry *old = op->dentry; in afs_silly_rename_edit_dir()
29 struct dentry *new = op->dentry_2; in afs_silly_rename_edit_dir()
34 if (dvnode->silly_key != op->key) { in afs_silly_rename_edit_dir()
36 dvnode->silly_key = key_get(op->key); in afs_silly_rename_edit_dir()
64 struct afs_operation *op; in afs_do_silly_rename() local
68 op = afs_alloc_operation(key, dvnode->volume); in afs_do_silly_rename()
69 if (IS_ERR(op)) in afs_do_silly_rename()
70 return PTR_ERR(op); in afs_do_silly_rename()
72 afs_op_set_vnode(op, 0, dvnode); in afs_do_silly_rename()
73 afs_op_set_vnode(op, 1, dvnode); in afs_do_silly_rename()
74 op->file[0].dv_delta = 1; in afs_do_silly_rename()
75 op->file[1].dv_delta = 1; in afs_do_silly_rename()
76 op->file[0].modification = true; in afs_do_silly_rename()
77 op->file[1].modification = true; in afs_do_silly_rename()
78 op->file[0].update_ctime = true; in afs_do_silly_rename()
79 op->file[1].update_ctime = true; in afs_do_silly_rename()
81 op->dentry = old; in afs_do_silly_rename()
82 op->dentry_2 = new; in afs_do_silly_rename()
83 op->ops = &afs_silly_rename_operation; in afs_do_silly_rename()
86 return afs_do_sync_operation(op); in afs_do_silly_rename()
158 static void afs_silly_unlink_success(struct afs_operation *op) in afs_silly_unlink_success() argument
160 _enter("op=%08x", op->debug_id); in afs_silly_unlink_success()
161 afs_check_dir_conflict(op, &op->file[0]); in afs_silly_unlink_success()
162 afs_vnode_commit_status(op, &op->file[0]); in afs_silly_unlink_success()
163 afs_vnode_commit_status(op, &op->file[1]); in afs_silly_unlink_success()
164 afs_update_dentry_version(op, &op->file[0], op->dentry); in afs_silly_unlink_success()
167 static void afs_silly_unlink_edit_dir(struct afs_operation *op) in afs_silly_unlink_edit_dir() argument
169 struct afs_vnode_param *dvp = &op->file[0]; in afs_silly_unlink_edit_dir()
172 _enter("op=%08x", op->debug_id); in afs_silly_unlink_edit_dir()
176 afs_edit_dir_remove(dvnode, &op->dentry->d_name, in afs_silly_unlink_edit_dir()
195 struct afs_operation *op; in afs_do_silly_unlink() local
199 op = afs_alloc_operation(NULL, dvnode->volume); in afs_do_silly_unlink()
200 if (IS_ERR(op)) in afs_do_silly_unlink()
201 return PTR_ERR(op); in afs_do_silly_unlink()
203 afs_op_set_vnode(op, 0, dvnode); in afs_do_silly_unlink()
204 afs_op_set_vnode(op, 1, vnode); in afs_do_silly_unlink()
205 op->file[0].dv_delta = 1; in afs_do_silly_unlink()
206 op->file[0].modification = true; in afs_do_silly_unlink()
207 op->file[0].update_ctime = true; in afs_do_silly_unlink()
208 op->file[1].op_unlinked = true; in afs_do_silly_unlink()
209 op->file[1].update_ctime = true; in afs_do_silly_unlink()
211 op->dentry = dentry; in afs_do_silly_unlink()
212 op->ops = &afs_silly_unlink_operation; in afs_do_silly_unlink()
215 afs_begin_vnode_operation(op); in afs_do_silly_unlink()
216 afs_wait_for_operation(op); in afs_do_silly_unlink()
221 if (op->error == 0 && (op->flags & AFS_OPERATION_DIR_CONFLICT)) { in afs_do_silly_unlink()
222 op->file[1].update_ctime = false; in afs_do_silly_unlink()
223 op->fetch_status.which = 1; in afs_do_silly_unlink()
224 op->ops = &afs_fetch_status_operation; in afs_do_silly_unlink()
225 afs_begin_vnode_operation(op); in afs_do_silly_unlink()
226 afs_wait_for_operation(op); in afs_do_silly_unlink()
229 return afs_put_operation(op); in afs_do_silly_unlink()