Whamcloud - gitweb
LU-18057 mdt: don't include DOM bit to stripes lock 28/55828/3
authorMikhail Pershin <mpershin@whamcloud.com>
Mon, 22 Jul 2024 08:50:06 +0000 (11:50 +0300)
committerOleg Drokin <green@whamcloud.com>
Thu, 8 Aug 2024 00:17:58 +0000 (00:17 +0000)
commitc1fec4e4e8360a946b85459d9c2db9d7be18778f
tree8989f46e8a248025e0f0c5210ed57579f965b9ef
parentb954c799474d52930548e0c7bc85e682617301c8
LU-18057 mdt: don't include DOM bit to stripes lock

Exclude DOM bit from inodebits mask used to restriping.
That might cause assertions further in inodebits code if
conflicts with GROUP lock. This bit is not needed anyway
but is taken just as part of MDS_INODELOCK_FULL used there

Patch uses mask MDS_RESTRIPE_ELC with excluded DOM bit for
restriping and prohibits further attempts to combine DOM
lock with other ibits mandatory. Note, that is restriction
only for local MDT locks as they are blocking locks.
In all such cases trybits to be used either for DoM bit or
for others

Signed-off-by: Mikhail Pershin <mpershin@whamcloud.com>
Change-Id: I2fed05caf60aaa17a0d91ecf7b72df2b4ff95141
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/55828
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Lai Siyao <lai.siyao@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
lustre/mdt/mdt_handler.c
lustre/mdt/mdt_reint.c
lustre/mdt/mdt_restripe.c
lustre/mdt/mdt_xattr.c