cluster: STABLE3 - cman: disable gfs plock_ownership when upgrading

Christine Caulfield chrissie at fedoraproject.org
Tue Jan 19 07:49:41 UTC 2010


Gitweb:        http://git.fedorahosted.org/git/cluster.git?p=cluster.git;a=commitdiff;h=d46ace8212615dfad24c408eebb94e32b24fe729
Commit:        d46ace8212615dfad24c408eebb94e32b24fe729
Parent:        2752a15c30f0bc9cec55a5a8603269d9eecea1e3
Author:        Christine Caulfield <ccaulfie at redhat.com>
AuthorDate:    Tue Jan 19 07:45:12 2010 +0000
Committer:     Christine Caulfield <ccaulfie at redhat.com>
CommitterDate: Tue Jan 19 07:45:12 2010 +0000

cman: disable gfs plock_ownership when upgrading

if <cman upgrading="yes"/> then also add
<gfs_controld plock_ownership="0"/>

rhbz#532808

Signed-off-by: Christine Caulfield <ccaulfie at redhat.com>
---
 cman/daemon/cman-preconfig.c |   11 +++++++++++
 1 files changed, 11 insertions(+), 0 deletions(-)

diff --git a/cman/daemon/cman-preconfig.c b/cman/daemon/cman-preconfig.c
index 5036a27..f27effa 100644
--- a/cman/daemon/cman-preconfig.c
+++ b/cman/daemon/cman-preconfig.c
@@ -1185,6 +1185,7 @@ static const char *groupd_compat="groupd_compat";
 static const char *clvmd_interface="interface";
 static const char *cman_disallowed="disallowed";
 static const char *totem_crypto="crypto_accept";
+static const char *plock_ownership="plock_ownership";
 
 /*
  * Flags to set:
@@ -1199,6 +1200,7 @@ static void setup_old_compat(struct objdb_iface_ver0 *objdb, hdb_handle_t cluste
 	hdb_handle_t clvmd_handle;
 	hdb_handle_t cman_handle;
 	hdb_handle_t totem_handle;
+	hdb_handle_t gfs_handle;
 	char *value;
 
 	/* Set groupd to backwards compatibility mode */
@@ -1236,6 +1238,15 @@ static void setup_old_compat(struct objdb_iface_ver0 *objdb, hdb_handle_t cluste
 		objdb->object_key_create_typed(totem_handle, totem_crypto,
 					       "old", 4, OBJDB_VALUETYPE_STRING);
 	}
+
+	/* Disable plock ownership */
+	gfs_handle = find_or_create_object(objdb, "gfs_controld", OBJECT_PARENT_HANDLE);
+	if (objdb->object_key_get(gfs_handle, plock_ownership, strlen(plock_ownership),
+				  (void *)&value, NULL) ||
+	    !value) {
+		objdb->object_key_create_typed(gfs_handle, plock_ownership,
+					       "0", 2, OBJDB_VALUETYPE_STRING);
+	}
 }
 
 static int cmanpre_readconfig(struct objdb_iface_ver0 *objdb, const char **error_string)


More information about the cluster-commits mailing list