|
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.
|