Whamcloud - gitweb
LU-14183 ldlm: wrong ldlm_add_waiting_lock usage
authorVitaly Fertman <c17818@cray.com>
Tue, 4 Oct 2022 17:24:31 +0000 (10:24 -0700)
committerAndreas Dilger <adilger@whamcloud.com>
Tue, 11 Oct 2022 07:47:48 +0000 (07:47 +0000)
commit239c3a48f75e78d0a756ac510180bd183e9d7cda
tree1aa0007abd9c0435d0c38abeffc3e592638d8fa9
parenta52a345de124934f3c24216e454db4a94509e6be
LU-14183 ldlm: wrong ldlm_add_waiting_lock usage

exp_bl_lock_at accounted the period since BLAST send until cancel RPC
came to server originally. LU-6032 started to update l_blast_sent for
expired locks which are still busy - prolonged locks when the timeout
expired. In fact, this is a good idea to cover not the whole period
but until any involved RPC comes - it avoids excessively large lock
callback timeouts - and the IO which does the lock prolong is also
able to re-start the AT cycle by updating the l_blast_sent.

Unfortunately, the change seems to be made occasionally as the main
prolong code was not adjusted accordingly.

Lustre-change: https://review.whamcloud.com/40868
Lustre-commit: af07c9a79e263f940fea06a911803097b57b55f4

Fixes: 292aa42e08 ("LU-6032 ldlm: don't disable softirq for exp_rpc_lock")
HPE-bug-id: LUS-9278
Signed-off-by: Vitaly Fertman <c17818@cray.com>
Change-Id: Idc598508fc13aa33ac9fce56f13310ca6fc819d4
Reviewed-on: https://review.whamcloud.com/c/ex/lustre-release/+/48761
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
lustre/ldlm/ldlm_extent.c
lustre/ldlm/ldlm_lockd.c