Please don't reply to lustre-devel. Instead, comment in Bugzilla by using the 
following link:
https://bugzilla.lustre.org/show_bug.cgi?id=10902

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Attachment #9248|review?([EMAIL PROTECTED]|review-
               Flag|)                           |


(From update of attachment 9248)
1. Oleg, your optimization above does not look very helpful.
Once a lock with a compatible mode occurs, we skip all the
locks of this mode by mode skip list -- locks are grouped by
mode. As we do not walk through locks with compatible modes,
your optimization works for the very first lock in every compatible
mode group only. I do not think we need an optimization that
works for 1 lock per mode group of locks.

2. we should probably check in search_grant_lock() if @lock is
not plain nor inodebits type, and LBUG if so.

3. when we call ldlm_granted_list_add_lock(), we do not call 
ldlm_resource_add_lock() anymore. Thus ldlm_granted_list_add_lock()
should print the same debug info as ldlm_resource_add_lock() does.
It also should handle destroyed locks in the same way.

4. ldlm_lock_convert()
if the lock is in the middle of the mode and policy groups,
@mark_lock will be NULL and the lock will be inserted later
to the end of the granted list in ldlm_granted_list_add_lock(),
what is wrong.

_______________________________________________
Lustre-devel mailing list
[email protected]
https://mail.clusterfs.com/mailman/listinfo/lustre-devel

Reply via email to