Whamcloud - gitweb
LU-13645 ldlm: re-process ldlm lock cleanup 05/39405/3
authorVitaly Fertman <c17818@cray.com>
Thu, 16 Jul 2020 11:28:03 +0000 (14:28 +0300)
committerOleg Drokin <green@whamcloud.com>
Thu, 13 Aug 2020 14:50:03 +0000 (14:50 +0000)
commitd7e6b6d2ab8718b55271be56afc4ee5f2beae84b
tree7a332c5a13b00f7d604320745f60ea252f5373c4
parenta6b5441de4269ee634a83fc717d3c28380c0fcfd
LU-13645 ldlm: re-process ldlm lock cleanup

For extent locks:
- rescan logic is not needed for group locks, it works well without it
- @err is not needed for ldlm_extent_compat_queue(), it is always set
  to @compat, remove it and set outside
- LDLM_FL_NO_TIMEOUT flag could be set once outside of
  ldlm_extent_compat_queue()
- add ldlm_resource_insert_lock_before();

For inodebits:
- glimpse expects ELDLM_LOCK_ABORTED to fill data properly on client
  side, do not return ELDLM_LOCK_WOULDBLOCK from
  ldlm_process_inodebits_lock()
- regular enqueue also does not have logic for ELDLM_LOCK_WOULDBLOCK,
  restore the original ELDLM_LOCK_ABORTED here as well for simplicity
- check for DOM lock in mdt_dom_client_has_lock() according to open
  flags, not for LCK_PW always;

Also, move sanity 82 to sanityn as after LU-9964 it is to be run on
two mount points.

Signed-off-by: Vitaly Fertman <c17818@cray.com>
Change-Id: I6d0b230f04aaa497db5b036b4ed9afe5d7f418b0
HPE-bug-id: LUS-8987
Reviewed-on: https://review.whamcloud.com/39405
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Mike Pershin <mpershin@whamcloud.com>
Reviewed-by: Alexey Lyashkov <alexey.lyashkov@hpe.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
lustre/ldlm/ldlm_extent.c
lustre/ldlm/ldlm_inodebits.c
lustre/ldlm/ldlm_internal.h
lustre/ldlm/ldlm_resource.c
lustre/mdt/mdt_io.c
lustre/tests/sanity.sh
lustre/tests/sanityn.sh