Whamcloud - gitweb
LU-13437 mdt: rename misses remote LOOKUP lock revoke 01/39601/3
authorLai Siyao <lai.siyao@whamcloud.com>
Wed, 8 Apr 2020 14:55:22 +0000 (22:55 +0800)
committerOleg Drokin <green@whamcloud.com>
Sat, 19 Sep 2020 18:13:19 +0000 (18:13 +0000)
commit23fa920b0ceef8672d0ee6af9c023f96039c61e3
tree34f1a132fd1c6779a671d6d11601f54f40a31237
parentae9fc81363bbb4cd5f6e0f6350cc2d6cc33798b3
LU-13437 mdt: rename misses remote LOOKUP lock revoke

In rename, all objects but target may be remote, so to check whether
source is remote object on source parent, we need to compare which
MDTs they are located if both are remote. Add a helper function
mdt_rename_source_lock() to handle all possible combinations. If target
parent is remote, take remote LOOKUP for target on where target parent
is.

Add sanityn.sh 81c.

Lustre-change: https://review.whamcloud.com/38181
Lustre-commit: 4918fe40db262b19093436caca688c75eb632496

Signed-off-by: Lai Siyao <lai.siyao@whamcloud.com>
Change-Id: I2c134970d6abc8761528d01950b23495292cdf93
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Mike Pershin <mpershin@whamcloud.com>
Signed-off-by: Minh Diep <mdiep@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/39601
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
lustre/mdt/mdt_handler.c
lustre/mdt/mdt_internal.h
lustre/mdt/mdt_reint.c
lustre/tests/sanityn.sh