Whamcloud - gitweb
LU-15821 ldlm: Prioritize blocking callbacks 15/47215/9
authorPatrick Farrell <pfarrell@whamcloud.com>
Thu, 5 May 2022 00:50:57 +0000 (20:50 -0400)
committerOleg Drokin <green@whamcloud.com>
Wed, 3 Aug 2022 04:07:14 +0000 (04:07 +0000)
commit2d59294d52b696125acc464e5910c893d9aef237
tree3093e8113201976a09dd534588e69cce00bc48e3
parentc23c68a52a04369101db2bd3b1d3da23025fcf48
LU-15821 ldlm: Prioritize blocking callbacks

The current code places bl_ast lock callbacks at the end of
the global BL callback queue.  This is bad because it
causes urgent requests from the server to wait behind
non-urgent cleanup tasks to keep lru_size at the right
level.

This can lead to evictions if there is a large queue of
items in the global queue so the callback is not serviced
in a timely manner.

Put bl_ast callbacks on the priority queue so they do not
wait behind the background traffic.

Add some additional debug in this area.

Signed-off-by: Patrick Farrell <pfarrell@whamcloud.com>
Change-Id: Ic6eb65819a4a93e9d30e807d386ca18380b30c7d
Reviewed-on: https://review.whamcloud.com/47215
Tested-by: jenkins <devops@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
lustre/ldlm/ldlm_lockd.c