From e204d5e3eed8c012927d28ab86b00df2d8d35ef8 Mon Sep 17 00:00:00 2001 From: Lai Siyao Date: Tue, 5 Mar 2019 12:30:15 +0800 Subject: [PATCH] LU-12081 mdt: rename shouldn't PDO lock if parent is remote In rename parent locking, if target parent is source parent, but it's remote, rename shouldn't PDO lock on it because PDO lock is for local lock. Lustre-change: https://review.whamcloud.com/34440 Lustre-commit: 9f1711f3d7d14cbe70fd058cbb59cda87d69eaa7 Signed-off-by: Lai Siyao Change-Id: Ib6ee1f70a50ddec3182c04c38a10ebbf2c384ccd Reviewed-by: Andreas Dilger Reviewed-by: Patrick Farrell Signed-off-by: Minh Diep Reviewed-on: https://review.whamcloud.com/34568 Tested-by: Jenkins Tested-by: Maloo Reviewed-by: Oleg Drokin --- lustre/mdt/mdt_reint.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lustre/mdt/mdt_reint.c b/lustre/mdt/mdt_reint.c index b1809dd..b089604 100644 --- a/lustre/mdt/mdt_reint.c +++ b/lustre/mdt/mdt_reint.c @@ -2330,7 +2330,8 @@ relock: if (mtgtdir != msrcdir) { rc = mdt_object_lock_save(info, mtgtdir, lh_tgtdirp, 1, cos_incompat); - } else if (lh_srcdirp->mlh_pdo_hash != + } else if (!mdt_object_remote(mtgtdir) && + lh_srcdirp->mlh_pdo_hash != lh_tgtdirp->mlh_pdo_hash) { rc = mdt_pdir_hash_lock(info, lh_tgtdirp, mtgtdir, MDS_INODELOCK_UPDATE, -- 1.8.3.1