int rc;
ENTRY;
+ LASSERT(lock->l_granted_mode != lock->l_req_mode);
LASSERT(cfs_list_empty(&res->lr_converting));
check_res_locked(res);
rc = ldlm_run_ast_work(ldlm_res_to_ns(res), &rpc_list,
LDLM_WORK_BL_AST);
lock_res(res);
- if (rc == -ERESTART)
- GOTO(restart, -ERESTART);
+ if (rc == -ERESTART)
+ GOTO(restart, rc);
*flags |= LDLM_FL_BLOCK_GRANTED;
} else {
ldlm_resource_unlink_lock(lock);