Whamcloud - gitweb
LU-11964 mdc: prevent glimpse lock count grow 04/34504/2
authorMikhail Pershin <mpershin@whamcloud.com>
Thu, 14 Feb 2019 21:51:00 +0000 (00:51 +0300)
committerOleg Drokin <green@whamcloud.com>
Mon, 1 Apr 2019 06:20:25 +0000 (06:20 +0000)
commit82dad29511b32c844c849ac4ec3ec0214077f125
tree294d578a0d89a271ef7e35c4021bb337e6d02975
parent6a412a8671d3d76b5da55c08ada011e7aeea1e8c
LU-11964 mdc: prevent glimpse lock count grow

DOM locks matching tries to ignore locks with
LDLM_FL_KMS_IGNORE flag during ldlm_lock_match() but
checks that after ldlm_lock_match() call. Therefore if
there is any lock with such flag in queue then all other
locks after it are ignored and new lock is created causing
big amount of locks on single resource in some access
patterns.
Patch extends lock_matches() function to check flags to
exclude and adds ldlm_lock_match_with_skip()p to use that
when needed.
Corresponding test was added in sanity-dom.sh

Test-Parameters: testlist=sanity-dom

Lustre-change: https://review.whamcloud.com/34261
Lustre-commit: b915221b6d0f3457fd9dd202a9d14c5f8385bf47

Signed-off-by: Mikhail Pershin <mpershin@whamcloud.com>
Change-Id: Ic45ca10f0e603e79a3a00e4fde13a5fae15ea5fc
Reviewed-by: Patrick Farrell <pfarrell@whamcloud.com>
Reviewed-by: Lai Siyao <lai.siyao@whamcloud.com>
Signed-off-by: Minh Diep <mdiep@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/34504
Tested-by: Jenkins
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
lustre/include/lustre_dlm.h
lustre/include/obd_support.h
lustre/ldlm/ldlm_lock.c
lustre/mdc/mdc_dev.c
lustre/tests/sanity-dom.sh