ocfs2: fix check for locally granted state during dlmunlock()
authorKurt Hackel <kurt.hackel@oracle.com>
Sat, 15 Jul 2006 17:22:39 +0000 (10:22 -0700)
committerMark Fasheh <mark.fasheh@oracle.com>
Mon, 7 Aug 2006 17:55:22 +0000 (10:55 -0700)
If a process requests a lock cancel but the lock has been remotely granted
already then there is no need to send the cancel message.

Signed-off-by: Kurt Hackel <kurt.hackel@oracle.com>
Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
fs/ocfs2/dlm/dlmunlock.c

index 59866e471d9610f2618d1f02bca5a7beb8167ae3..37be4b2e0d4a8801982e97a8636f61abd1360d4e 100644 (file)
@@ -155,7 +155,7 @@ static enum dlm_status dlmunlock_common(struct dlm_ctxt *dlm,
        else
                status = dlm_get_unlock_actions(dlm, res, lock, lksb, &actions);
 
-       if (status != DLM_NORMAL && status != DLM_CANCELGRANT)
+       if (status != DLM_NORMAL && (status != DLM_CANCELGRANT || !master_node))
                goto leave;
 
        /* By now this has been masked out of cancel requests. */