Uploaded image for project: 'Lustre'
  1. Lustre
  2. LU-2383

save ofd_object inside LVB to keep object in cache and save lookup

XMLWordPrintable

    • Icon: Improvement Improvement
    • Resolution: Low Priority
    • Icon: Major Major
    • None
    • None
    • None
    • 1
    • Orion
    • 3057

      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.

            tappro Mikhail Pershin
            tappro Mikhail Pershin
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: