Whamcloud - gitweb
LU-15821 ldlm: Prioritize blocking callbacks 10/49610/2
authorPatrick Farrell <pfarrell@whamcloud.com>
Thu, 5 May 2022 00:50:57 +0000 (20:50 -0400)
committerOleg Drokin <green@whamcloud.com>
Wed, 2 Aug 2023 06:15:52 +0000 (06:15 +0000)
commit8ca1186151faa778edd5abd361e92fcd5d8ff56b
tree87dd3dfef11e86e4d14d2ce2e0782ccaaddb3819
parentc209fe8c68e4275855154285901cfc0091bdf9e9
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.

Lustre-change: https://review.whamcloud.com/47215
Lustre-commit: 2d59294d52b696125acc464e5910c893d9aef237

Signed-off-by: Patrick Farrell <pfarrell@whamcloud.com>
Change-Id: Ic6eb65819a4a93e9d30e807d386ca18380b30c7d
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/49610
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Stephane Thiell <sthiell@stanford.edu>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
lustre/ldlm/ldlm_lockd.c