[LU-14756] Single use LDLM locks for lockahed Created: 10/Jun/21  Updated: 10/Jun/21

Status: Open
Project: Lustre
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Improvement Priority: Minor
Reporter: Patrick Farrell Assignee: Patrick Farrell
Resolution: Unresolved Votes: 0
Labels: None

Rank (Obsolete): 9223372036854775807

 Description   

Today, all LDLM locks created by lockahead are cached after use.  In many situations, this is not desirable - The application or library using them only expects to use them once.

The main negative side effect of this caching is that the locks pile up, and then may all need to be flushed rapidly, such as when a file is deleted, or if data is ready from a different node where it was written.  This can induce significant delays.

It would be much better to create the option of locks which remain in cache until used once, then do not return to cache.  This can be done fairly easily with a new LDLM flag, accessible via the flags on ladvise requests.



 Comments   
Comment by Gerrit Updater [ 10/Jun/21 ]

Patrick Farrell (farr0186@gmail.com) uploaded a new patch: https://review.whamcloud.com/43975
Subject: LU-14756 llite: Add cache once to lockahead
Project: fs/lustre-release
Branch: master
Current Patch Set: 1
Commit: 1126653130c43926f5bfb07a9323a7d2028d206a

Comment by Patrick Farrell [ 10/Jun/21 ]

This is a generic improvement to lockahead, but this also has some potential applications for some ideas I have for improving unusual i/o patterns.  Those ideas may never actually happen, but this improvement is relatively simple & should be beneficial to users of lockahead, so it's still worth having.

Generated at Sat Feb 10 03:12:30 UTC 2024 using Jira 9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c.