From f5289bf3e7d273855042a905ba49d795f4565c3f Mon Sep 17 00:00:00 2001 From: yury Date: Thu, 26 Oct 2006 11:35:10 +0000 Subject: [PATCH] - use LCK_XX locks instead of MDT specified macros. --- lustre/mdt/mdt_handler.c | 6 +++--- lustre/mdt/mdt_internal.h | 4 ---- lustre/mdt/mdt_open.c | 8 ++++---- lustre/mdt/mdt_reint.c | 26 +++++++++++++------------- lustre/mdt/mdt_xattr.c | 2 +- 5 files changed, 21 insertions(+), 25 deletions(-) diff --git a/lustre/mdt/mdt_handler.c b/lustre/mdt/mdt_handler.c index 20e8a8a..1d5ca70 100644 --- a/lustre/mdt/mdt_handler.c +++ b/lustre/mdt/mdt_handler.c @@ -793,7 +793,7 @@ static int mdt_getattr_name_lock(struct mdt_thread_info *info, rc = 0; } else { mdt_lock_handle_init(lhc); - mdt_lock_reg_init(lhc, MDT_RD_LOCK); + mdt_lock_reg_init(lhc, LCK_PR); /* * Object's name is on another MDS, no lookup lock is @@ -818,7 +818,7 @@ static int mdt_getattr_name_lock(struct mdt_thread_info *info, /*step 1: lock parent */ lhp = &info->mti_lh[MDT_LH_PARENT]; - mdt_lock_pdo_init(lhp, MDT_RD_LOCK, name, namelen); + mdt_lock_pdo_init(lhp, LCK_PR, name, namelen); rc = mdt_object_lock(info, parent, lhp, MDS_INODELOCK_UPDATE, MDT_LOCAL_LOCK); if (rc != 0) @@ -852,7 +852,7 @@ static int mdt_getattr_name_lock(struct mdt_thread_info *info, LDLM_LOCK_PUT(lock); } else { mdt_lock_handle_init(lhc); - mdt_lock_reg_init(lhc, MDT_RD_LOCK); + mdt_lock_reg_init(lhc, LCK_PR); rc = mdt_object_lock(info, child, lhc, child_bits, MDT_CROSS_LOCK); diff --git a/lustre/mdt/mdt_internal.h b/lustre/mdt/mdt_internal.h index 7c4cd96..fb5ef98 100644 --- a/lustre/mdt/mdt_internal.h +++ b/lustre/mdt/mdt_internal.h @@ -707,9 +707,5 @@ static inline void mdt_set_capainfo(struct mdt_thread_info *info, int offset, ci->mc_capa[offset] = capa; } -#define MDT_RD_LOCK LCK_PR -#define MDT_WR_LOCK LCK_PW -#define MDT_EX_LOCK LCK_EX - #endif /* __KERNEL__ */ #endif /* _MDT_H */ diff --git a/lustre/mdt/mdt_open.c b/lustre/mdt/mdt_open.c index f6772b7..ce07420 100644 --- a/lustre/mdt/mdt_open.c +++ b/lustre/mdt/mdt_open.c @@ -149,7 +149,7 @@ int mdt_epoch_open(struct mdt_thread_info *info, struct mdt_object *o) * In the later case, mdt_reint_setattr will do it. */ if (cancel && (info->mti_rr.rr_fid1 != NULL)) { struct mdt_lock_handle *lh = &info->mti_lh[MDT_LH_CHILD]; - mdt_lock_reg_init(lh, MDT_EX_LOCK); + mdt_lock_reg_init(lh, LCK_EX); rc = mdt_object_lock(info, o, lh, MDS_INODELOCK_UPDATE, MDT_LOCAL_LOCK); if (rc == 0) @@ -784,10 +784,10 @@ int mdt_reint_open(struct mdt_thread_info *info, struct mdt_lock_handle *lhc) lh = &info->mti_lh[MDT_LH_PARENT]; if (!(create_flags & MDS_OPEN_CREAT)) { - mdt_lock_pdo_init(lh, MDT_RD_LOCK, rr->rr_name, + mdt_lock_pdo_init(lh, LCK_PR, rr->rr_name, rr->rr_namelen); } else { - mdt_lock_pdo_init(lh, MDT_WR_LOCK, rr->rr_name, + mdt_lock_pdo_init(lh, LCK_PW, rr->rr_name, rr->rr_namelen); } parent = mdt_object_find_lock(info, rr->rr_fid1, lh, @@ -890,7 +890,7 @@ int mdt_reint_open(struct mdt_thread_info *info, struct mdt_lock_handle *lhc) rc = 0; } else { mdt_lock_handle_init(lhc); - mdt_lock_reg_init(lhc, MDT_RD_LOCK); + mdt_lock_reg_init(lhc, LCK_PR); rc = mdt_object_lock(info, child, lhc, MDS_INODELOCK_LOOKUP, diff --git a/lustre/mdt/mdt_reint.c b/lustre/mdt/mdt_reint.c index 14fee60..a7b436c 100644 --- a/lustre/mdt/mdt_reint.c +++ b/lustre/mdt/mdt_reint.c @@ -54,7 +54,7 @@ static int mdt_md_create(struct mdt_thread_info *info) repbody = req_capsule_server_get(&info->mti_pill, &RMF_MDT_BODY); lh = &info->mti_lh[MDT_LH_PARENT]; - mdt_lock_pdo_init(lh, MDT_WR_LOCK, rr->rr_name, rr->rr_namelen); + mdt_lock_pdo_init(lh, LCK_PW, rr->rr_name, rr->rr_namelen); parent = mdt_object_find_lock(info, rr->rr_fid1, lh, MDS_INODELOCK_UPDATE); @@ -160,7 +160,7 @@ int mdt_attr_set(struct mdt_thread_info *info, struct mdt_object *mo, int flags) RETURN(0); lh = &info->mti_lh[MDT_LH_PARENT]; - mdt_lock_pdo_init(lh, MDT_WR_LOCK, NULL, 0); + mdt_lock_pdo_init(lh, LCK_PW, NULL, 0); if (!(flags & MRF_SETATTR_LOCKED)) { __u64 lockpart = MDS_INODELOCK_UPDATE; @@ -367,7 +367,7 @@ static int mdt_reint_unlink(struct mdt_thread_info *info, /* step 1: lock the parent */ parent_lh = &info->mti_lh[MDT_LH_PARENT]; - mdt_lock_pdo_init(parent_lh, MDT_WR_LOCK, rr->rr_name, + mdt_lock_pdo_init(parent_lh, LCK_PW, rr->rr_name, rr->rr_namelen); mp = mdt_object_find_lock(info, rr->rr_fid1, parent_lh, @@ -426,7 +426,7 @@ static int mdt_reint_unlink(struct mdt_thread_info *info, if (IS_ERR(mc)) GOTO(out_unlock_parent, rc = PTR_ERR(mc)); child_lh = &info->mti_lh[MDT_LH_CHILD]; - mdt_lock_reg_init(child_lh, MDT_EX_LOCK); + mdt_lock_reg_init(child_lh, LCK_EX); rc = mdt_object_lock(info, mc, child_lh, MDS_INODELOCK_FULL, MDT_CROSS_LOCK); if (rc != 0) @@ -483,7 +483,7 @@ static int mdt_reint_link(struct mdt_thread_info *info, if (rr->rr_name[0] == 0) { /* MDT holding name ask us to add ref. */ lhs = &info->mti_lh[MDT_LH_CHILD]; - mdt_lock_reg_init(lhs, MDT_EX_LOCK); + mdt_lock_reg_init(lhs, LCK_EX); ms = mdt_object_find_lock(info, rr->rr_fid1, lhs, MDS_INODELOCK_UPDATE); if (IS_ERR(ms)) @@ -497,7 +497,7 @@ static int mdt_reint_link(struct mdt_thread_info *info, /* step 1: find & lock the target parent dir */ lhp = &info->mti_lh[MDT_LH_PARENT]; - mdt_lock_pdo_init(lhp, MDT_WR_LOCK, rr->rr_name, + mdt_lock_pdo_init(lhp, LCK_PW, rr->rr_name, rr->rr_namelen); mp = mdt_object_find_lock(info, rr->rr_fid2, lhp, MDS_INODELOCK_UPDATE); @@ -506,7 +506,7 @@ static int mdt_reint_link(struct mdt_thread_info *info, /* step 2: find & lock the source */ lhs = &info->mti_lh[MDT_LH_CHILD]; - mdt_lock_reg_init(lhs, MDT_EX_LOCK); + mdt_lock_reg_init(lhs, LCK_EX); ms = mdt_object_find(info->mti_env, info->mti_mdt, rr->rr_fid1); if (IS_ERR(ms)) GOTO(out_unlock_parent, rc = PTR_ERR(ms)); @@ -550,7 +550,7 @@ static int mdt_reint_rename_tgt(struct mdt_thread_info *info) /* step 1: lookup & lock the tgt dir */ lh_tgtdir = &info->mti_lh[MDT_LH_PARENT]; - mdt_lock_pdo_init(lh_tgtdir, MDT_WR_LOCK, rr->rr_tgt, + mdt_lock_pdo_init(lh_tgtdir, LCK_PW, rr->rr_tgt, rr->rr_tgtlen); mtgtdir = mdt_object_find_lock(info, rr->rr_fid1, lh_tgtdir, MDS_INODELOCK_UPDATE); @@ -572,7 +572,7 @@ static int mdt_reint_rename_tgt(struct mdt_thread_info *info) GOTO(out_unlock_tgtdir, rc); lh_tgt = &info->mti_lh[MDT_LH_CHILD]; - mdt_lock_reg_init(lh_tgt, MDT_EX_LOCK); + mdt_lock_reg_init(lh_tgt, LCK_EX); mtgt = mdt_object_find_lock(info, tgt_fid, lh_tgt, MDS_INODELOCK_LOOKUP); @@ -723,7 +723,7 @@ static int mdt_reint_rename(struct mdt_thread_info *info, /* step 1: lock the source dir. */ lh_srcdirp = &info->mti_lh[MDT_LH_PARENT]; - mdt_lock_pdo_init(lh_srcdirp, MDT_WR_LOCK, rr->rr_name, + mdt_lock_pdo_init(lh_srcdirp, LCK_PW, rr->rr_name, rr->rr_namelen); msrcdir = mdt_object_find_lock(info, rr->rr_fid1, lh_srcdirp, MDS_INODELOCK_UPDATE); @@ -732,7 +732,7 @@ static int mdt_reint_rename(struct mdt_thread_info *info, /* step 2: find & lock the target dir. */ lh_tgtdirp = &info->mti_lh[MDT_LH_CHILD]; - mdt_lock_pdo_init(lh_tgtdirp, MDT_WR_LOCK, rr->rr_tgt, + mdt_lock_pdo_init(lh_tgtdirp, LCK_PW, rr->rr_tgt, rr->rr_tgtlen); if (lu_fid_eq(rr->rr_fid1, rr->rr_fid2)) { mdt_object_get(info->mti_env, msrcdir); @@ -766,7 +766,7 @@ static int mdt_reint_rename(struct mdt_thread_info *info, GOTO(out_unlock_target, rc = -EINVAL); lh_oldp = &info->mti_lh[MDT_LH_OLD]; - mdt_lock_reg_init(lh_oldp, MDT_EX_LOCK); + mdt_lock_reg_init(lh_oldp, LCK_EX); mold = mdt_object_find_lock(info, old_fid, lh_oldp, MDS_INODELOCK_LOOKUP); if (IS_ERR(mold)) @@ -785,7 +785,7 @@ static int mdt_reint_rename(struct mdt_thread_info *info, lu_fid_eq(new_fid, rr->rr_fid2)) GOTO(out_unlock_old, rc = -EINVAL); - mdt_lock_reg_init(lh_newp, MDT_EX_LOCK); + mdt_lock_reg_init(lh_newp, LCK_EX); mnew = mdt_object_find(info->mti_env, info->mti_mdt, new_fid); if (IS_ERR(mnew)) GOTO(out_unlock_old, rc = PTR_ERR(mnew)); diff --git a/lustre/mdt/mdt_xattr.c b/lustre/mdt/mdt_xattr.c index 8e899cb..cd207d2 100644 --- a/lustre/mdt/mdt_xattr.c +++ b/lustre/mdt/mdt_xattr.c @@ -318,7 +318,7 @@ int mdt_setxattr(struct mdt_thread_info *info) lockpart |= MDS_INODELOCK_LOOKUP; lh = &info->mti_lh[MDT_LH_PARENT]; - mdt_lock_pdo_init(lh, MDT_WR_LOCK, NULL, 0); + mdt_lock_pdo_init(lh, LCK_PW, NULL, 0); rc = mdt_object_lock(info, obj, lh, lockpart, MDT_LOCAL_LOCK); if (rc != 0) GOTO(out, rc); -- 1.8.3.1