Messages in this thread Patch in this message | | | From | David Teigland <> | Subject | [PATCH 6/7] dlm: ignore cancel on granted lock | Date | Tue, 24 Mar 2009 09:07:51 -0500 |
| |
Return immediately from dlm_unlock(CANCEL) if the lock is granted and not being converted; there's nothing to cancel.
Signed-off-by: David Teigland <teigland@redhat.com> --- fs/dlm/lock.c | 7 +++++++ 1 files changed, 7 insertions(+), 0 deletions(-)
diff --git a/fs/dlm/lock.c b/fs/dlm/lock.c index 8cb9204..205ec95 100644 --- a/fs/dlm/lock.c +++ b/fs/dlm/lock.c @@ -2186,6 +2186,13 @@ static int validate_unlock_args(struct dlm_lkb *lkb, struct dlm_args *args) goto out; } + /* there's nothing to cancel */ + if (lkb->lkb_status == DLM_LKSTS_GRANTED && + !lkb->lkb_wait_type) { + rv = -EBUSY; + goto out; + } + switch (lkb->lkb_wait_type) { case DLM_MSG_LOOKUP: case DLM_MSG_REQUEST: -- 1.5.5.6
| |