[LU-2383] save ofd_object inside LVB to keep object in cache and save lookup Created: 14/Jun/12  Updated: 15/Dec/19  Resolved: 15/Dec/19

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

Type: Improvement Priority: Major
Reporter: Mikhail Pershin Assignee: Mikhail Pershin
Resolution: Low Priority Votes: 0
Labels: None

Issue Links:
Related
is related to LU-911 land OFD on master branch Resolved
Story Points: 1
Project: Orion
Rank (Obsolete): 3057

 Description   

In filter_lvbo_init() and filter_lvbo_free() there is a reference on the underlying inode (lr_lvb_inode) to avoid repeated lookups of the inode and sometimes timeouts (from b=22107, commit fc4a1bd60f60ce9fd69f09947adba4a52d30b1e7). Since client requests are supposed to include the DLM lock handle under which they are operating, this allows O(1) access to the inode instead of having to do a lookup of the FID.
It is reasonable to change "struct inode *lr_lvb_inode" to be "struct dt_object *lr_lvb_object" and keep a reference on the OSD ofd_object there.



 Comments   
Comment by Mikhail Pershin [ 14/Jun/12 ]

need to be landed to the master later

Comment by Mikhail Pershin [ 15/Dec/19 ]

Outdated

Generated at Sat Feb 10 01:24:44 UTC 2024 using Jira 9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c.