diff --git a/lustre/ChangeLog b/lustre/ChangeLog index 08463bc8bb8fae56f0abba74077ce20790cb01d4..492499ad4c7ab0f8611d5b78bccec52eb48a4335 100644 --- a/lustre/ChangeLog +++ b/lustre/ChangeLog @@ -834,6 +834,12 @@ Bugzilla : 15033 Description: build for x2 fails Details : fix compile issue on Cray systems. +Severity : normal +Bugzilla : 14379 +Description: Properly match for duplicate locks +Details : Due to different lock order from skiplists code, we need to + traverse entire list for now + -------------------------------------------------------------------------------- 2007-08-10 Cluster File Systems, Inc. <info@clusterfs.com> diff --git a/lustre/ldlm/ldlm_lock.c b/lustre/ldlm/ldlm_lock.c index 825dfb89e0f6eb57fc5dddd0216c1379b163c4f7..6f7f5cf8144013ab1cb8cf2409648297a2969a9d 100644 --- a/lustre/ldlm/ldlm_lock.c +++ b/lustre/ldlm/ldlm_lock.c @@ -911,7 +911,7 @@ static struct ldlm_lock *search_queue(struct list_head *queue, lock = list_entry(tmp, struct ldlm_lock, l_res_link); if (lock == old_lock) - break; + continue; /* llite sometimes wants to match locks that will be * canceled when their users drop, but we allow it to match