[LU-7896] lu_object_limit() is called too frequently Created: 22/Mar/16  Updated: 13/Feb/19  Resolved: 22/Jun/16

Status: Resolved
Project: Lustre
Component/s: None
Affects Version/s: None
Fix Version/s: Lustre 2.9.0

Type: Improvement Priority: Minor
Reporter: Alex Zhuravlev Assignee: Alex Zhuravlev
Resolution: Fixed Votes: 0
Labels: None

Issue Links:
Blocker
is blocking LU-7895 zfs metadata performance improvements Resolved
Related
is related to LU-7997 RCU stalls waiting for lu_sites_guard... Resolved
is related to LU-5749 osd-zfs: object creation may serializ... Resolved
Rank (Obsolete): 9223372036854775807

 Description   

with ZFS the number of objects in LU cache is limited, so any lu_object_new() checks whether the limit is exceeded. so, at some point it's called for every new object and worse - many threads got blocked in lu_site_purge() due to that. we don't need that strong semantics for the number of cached object, this should be fixed in a way to purge objects in batches in non-blocking manner.



 Comments   
Comment by Gerrit Updater [ 23/Mar/16 ]

Alex Zhuravlev (alexey.zhuravlev@intel.com) uploaded a new patch: http://review.whamcloud.com/19082
Subject: LU-7896: do not call lu_site_purge() for single object exceed
Project: fs/lustre-release
Branch: master
Current Patch Set: 1
Commit: b51f1593d78daa80956d3b71fc943b2fbe06c47f

Comment by Gerrit Updater [ 22/Jun/16 ]

Oleg Drokin (oleg.drokin@intel.com) merged in patch http://review.whamcloud.com/19082/
Subject: LU-7896: do not call lu_site_purge() for single object exceed
Project: fs/lustre-release
Branch: master
Current Patch Set:
Commit: f3d42a7000884149d3be408b9d5f170a355dd9e6

Comment by Joseph Gmitter (Inactive) [ 22/Jun/16 ]

Landed to master for 2.9.0

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