struct mds_body *body = NULL;
struct dentry *dchild = NULL, *dparent = NULL;
struct mds_export_data *med;
- struct lustre_handle parent_lockh[2];
+ struct lustre_handle parent_lockh[2] = {{0}, {0}};
int rc = 0, cleanup_phase = 0, acc_mode, created = 0;
int parent_mode = LCK_PR;
void *handle = NULL;
OLID4(rec->ur_id1), rec->ur_namelen - 1, rec->ur_name,
rec->ur_mode);
- parent_lockh[0].cookie = 0;
- parent_lockh[1].cookie = 0;
-
if (offset == 3) { /* intent */
rep = lustre_msg_buf(req->rq_repmsg, 0, sizeof (*rep));
body = lustre_msg_buf(req->rq_repmsg, 1, sizeof (*body));
if (err)
CERROR("error on parent setattr: rc = %d\n", err);
}
-// rc = mds_finish_transno(mds, dparent ? dparent->d_inode : NULL,
-// handle, req, rc, 0);
+ rc = mds_finish_transno(mds, dparent ? dparent->d_inode : NULL,
+ handle, req, rc, 0);
if (!rc)
(void)obd_set_info(mds->mds_lov_exp, strlen("unlinked"),
"unlinked", 0, NULL);
ptlrpc_save_lock(req, parent_lockh, LCK_PW);
l_dput(dchild);
l_dput(dchild);
-
- rc = mds_finish_transno(mds, dparent ? dparent->d_inode : NULL,
- handle, req, rc, 0);
l_dput(dparent);
case 0:
break;
} else {
ptlrpc_save_lock(req, tgt_dir_lockh, LCK_EX);
#ifdef S_PDIROPS
- ptlrpc_save_lock(req, tgt_dir_lockh+1, update_mode);
+ ptlrpc_save_lock(req, tgt_dir_lockh + 1, update_mode);
#endif
}
l_dput(de_tgt_dir);
obd->obd_name, rec->ur_tgt, OLID4(rec->ur_id1));
/* first, lookup the target */
- child_lockh.cookie = 0;
-
rc = mds_get_parent_child_locked(obd, mds, rec->ur_id2, parent_lockh,
&de_tgtdir, LCK_PW, MDS_INODELOCK_UPDATE,
&update_mode, rec->ur_tgt, rec->ur_tgtlen,
if (cleanup_phase == 1) {
#ifdef S_PDIROPS
if (parent_lockh[1].cookie != 0)
- ldlm_lock_decref(&parent_lockh[1], update_mode);
+ ldlm_lock_decref(parent_lockh + 1, update_mode);
#endif
- ldlm_lock_decref(&parent_lockh[0], LCK_PW);
+ ldlm_lock_decref(parent_lockh, LCK_PW);
if (child_lockh.cookie != 0)
ldlm_lock_decref(&child_lockh, LCK_EX);
l_dput(de_new);
RETURN(-ENOMEM);
memset(op_data, 0, sizeof(*op_data));
- child_lockh.cookie = 0;
rc = mds_get_parent_child_locked(obd, mds, rec->ur_id1, parent_lockh,
&de_srcdir, LCK_PW, MDS_INODELOCK_UPDATE,
&update_mode, rec->ur_name,
#ifdef S_PDIROPS
if (parent_lockh[1].cookie != 0)
- ldlm_lock_decref(&parent_lockh[1], update_mode);
+ ldlm_lock_decref(parent_lockh + 1, update_mode);
#endif
- ldlm_lock_decref(&parent_lockh[0], LCK_PW);
+ ldlm_lock_decref(parent_lockh, LCK_PW);
if (child_lockh.cookie != 0)
ldlm_lock_decref(&child_lockh, LCK_EX);