- if (is_unlock(last)) {
- /* Find a previous unlock at this point? */
- for (i = find_repeat(history, last, last);
- i;
- i = find_repeat(history, i, last)) {
- if (is_unlock(i))
- return FAIL_DONT_FAIL;
- }
- return FAIL_PROBE;
- } else if (is_nonblocking_lock(last)) {
- /* Find a previous non-blocking lock at this point? */
- for (i = find_repeat(history, last, last);
- i;
- i = find_repeat(history, i, last)) {
- if (is_nonblocking_lock(i))
- return FAIL_DONT_FAIL;
- }