- LASSERT(work_list != NULL);
- rc = ldlm_plain_compat_queue(&res->lr_granted, lock, NULL);
- if (!rc)
- RETURN(LDLM_ITER_STOP);
- rc = ldlm_plain_compat_queue(&res->lr_waiting, lock, NULL);
- if (!rc)
- RETURN(LDLM_ITER_STOP);
-
- ldlm_resource_unlink_lock(lock);
- ldlm_grant_lock(lock, work_list);
- RETURN(LDLM_ITER_CONTINUE);
- }
-
- LASSERT((intention == LDLM_PROCESS_ENQUEUE && work_list == NULL) ||
- (intention == LDLM_PROCESS_RECOVERY && work_list != NULL));
- restart:
- rc = ldlm_plain_compat_queue(&res->lr_granted, lock, &rpc_list);
- rc += ldlm_plain_compat_queue(&res->lr_waiting, lock, &rpc_list);
-
- if (rc != 2) {
- rc = ldlm_handle_conflict_lock(lock, flags, &rpc_list, 0);
- if (rc == -ERESTART)
- GOTO(restart, rc);
- *err = rc;
- } else {
+ LASSERT(work_list != NULL);
+ rc = ldlm_plain_compat_queue(&res->lr_granted, lock, NULL);
+ if (!rc)
+ RETURN(LDLM_ITER_STOP);
+ rc = ldlm_plain_compat_queue(&res->lr_waiting, lock, NULL);
+ if (!rc)
+ RETURN(LDLM_ITER_STOP);
+