Whamcloud - gitweb
LU-14826 mdt: getattr_name("..") under striped directory
authorLai Siyao <lai.siyao@whamcloud.com>
Thu, 8 Jul 2021 14:25:51 +0000 (10:25 -0400)
committerAndreas Dilger <adilger@whamcloud.com>
Thu, 15 Jul 2021 05:34:25 +0000 (05:34 +0000)
commitcc7fc7f245dd9830cb6ad68f8ed3d2caf4b20208
tree0430c30cffbe4cb5c4559f1d4cc63d93c5c2b39b
parentcea5f1f36a30c8f01b6f27feb5a809732d6c3180
LU-14826 mdt: getattr_name("..") under striped directory

For getattr_name(".."), it should return FID of the master object for
striped directories. This includes changes on both client and server:
* lmv_getattr_name() should use master object FID if it's looking up
  "..".
* mdt_raw_lookup() should check parent object is sub stripe, if so
  it needs to lookup again to get master object FID. For old client
  without above change this needs to be checked twice.

This is needed by NFS export, because ll_get_parent() find parent by
getattr_name("..").

Reenable check_fhandle_syscall and update sanityn test_102.

Lustre-change: https://review.whamcloud.com/44168
Lustre-commit: TBD (from 1c4ab69260220be049645b4a38d06a671d21d752)

Signed-off-by: Lai Siyao <lai.siyao@whamcloud.com>
Change-Id: I72c951293e41656ce3778750147402d7f8ca4cec
Reviewed-on: https://review.whamcloud.com/44289
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
lustre/lmv/lmv_obd.c
lustre/mdt/mdt_handler.c
lustre/tests/check_fhandle_syscalls.c
lustre/tests/sanityn.sh