This is the mail archive of the
cluster-cvs@sourceware.org
mailing list for the cluster.
cluster: master - gfs_controld/dlm_controld: fix lock syncing inownership mode
- From: David Teigland <teigland at fedoraproject dot org>
- To: cluster-cvs-relay at redhat dot com
- Date: Thu, 4 Dec 2008 16:19:10 +0000 (UTC)
- Subject: cluster: master - gfs_controld/dlm_controld: fix lock syncing inownership mode
Gitweb: http://git.fedorahosted.org/git/cluster.git?p=cluster.git;a=commitdiff;h=22c859d846130c82b351b27cf6ac9339f40e26e1
Commit: 22c859d846130c82b351b27cf6ac9339f40e26e1
Parent: 9f25e509eb0c03ef5b4db568017b37183be7e53e
Author: David Teigland <teigland@redhat.com>
AuthorDate: Thu Dec 4 10:16:39 2008 -0600
Committer: David Teigland <teigland@redhat.com>
CommitterDate: Thu Dec 4 10:16:39 2008 -0600
gfs_controld/dlm_controld: fix lock syncing in ownership mode
bz 474163
Locks that are synced due to a resource being "un-owned"
were having their read/write mode reversed on the nodes
being synced to. This causes the plock state on the nodes
to become out of sync, and operate wrongly.
Signed-off-by: David Teigland <teigland@redhat.com>
---
group/dlm_controld/plock.c | 2 +-
group/gfs_controld/plock.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/group/dlm_controld/plock.c b/group/dlm_controld/plock.c
index 0f57fe6..344b26f 100644
--- a/group/dlm_controld/plock.c
+++ b/group/dlm_controld/plock.c
@@ -1251,7 +1251,7 @@ static void _receive_sync(struct lockspace *ls, struct dlm_header *hd, int len)
}
if (hd->type == DLM_MSG_PLOCK_SYNC_LOCK)
- add_lock(r, info.nodeid, info.owner, info.pid, !info.ex,
+ add_lock(r, info.nodeid, info.owner, info.pid, info.ex,
info.start, info.end);
else if (hd->type == DLM_MSG_PLOCK_SYNC_WAITER)
add_waiter(ls, r, &info);
diff --git a/group/gfs_controld/plock.c b/group/gfs_controld/plock.c
index a34b56a..9871337 100644
--- a/group/gfs_controld/plock.c
+++ b/group/gfs_controld/plock.c
@@ -1212,7 +1212,7 @@ static void _receive_sync(struct mountgroup *mg, char *buf, int len, int from)
}
if (hd->type == MSG_PLOCK_SYNC_LOCK)
- add_lock(r, info.nodeid, info.owner, info.pid, !info.ex,
+ add_lock(r, info.nodeid, info.owner, info.pid, info.ex,
info.start, info.end);
else if (hd->type == MSG_PLOCK_SYNC_WAITER)
add_waiter(mg, r, &info);