Skip to content

Commit

Permalink
ocfs2: recheck lockres master before sending an unlock request.
Browse files Browse the repository at this point in the history
Recovery may have happened and it may now be mastered locally.

Signed-off-by: Kurt Hackel <kurt.hackel@oracle.com>
Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
  • Loading branch information
Kurt Hackel authored and Mark Fasheh committed Jun 26, 2006
1 parent 8d79d08 commit 2580a58
Showing 1 changed file with 10 additions and 0 deletions.
10 changes: 10 additions & 0 deletions fs/ocfs2/dlm/dlmunlock.c
Original file line number Diff line number Diff line change
Expand Up @@ -317,6 +317,16 @@ static enum dlm_status dlm_send_remote_unlock_request(struct dlm_ctxt *dlm,
size_t veclen = 1;

mlog_entry("%.*s\n", res->lockname.len, res->lockname.name);

if (owner == dlm->node_num) {
/* ended up trying to contact ourself. this means
* that the lockres had been remote but became local
* via a migration. just retry it, now as local */
mlog(0, "%s:%.*s: this node became the master due to a "
"migration, re-evaluate now\n", dlm->name,
res->lockname.len, res->lockname.name);
return DLM_FORWARD;
}

memset(&unlock, 0, sizeof(unlock));
unlock.node_idx = dlm->node_num;
Expand Down

0 comments on commit 2580a58

Please sign in to comment.