cluster: STABLE3 - rgmanager: Do hard shut down if corosync dies

Lon Hohberger lon at fedoraproject.org
Wed May 5 15:27:35 UTC 2010


Gitweb:        http://git.fedorahosted.org/git/cluster.git?p=cluster.git;a=commitdiff;h=82faccc5e341c9e7131d8db5a5e524a8ebfe30dc
Commit:        82faccc5e341c9e7131d8db5a5e524a8ebfe30dc
Parent:        ae3820352e7ca42b46d8f1eb14902ab7f16216ed
Author:        Lon Hohberger <lhh at redhat.com>
AuthorDate:    Wed May 5 09:13:08 2010 -0400
Committer:     Lon Hohberger <lhh at redhat.com>
CommitterDate: Wed May 5 11:26:23 2010 -0400

rgmanager: Do hard shut down if corosync dies

Resolves: 589131

Signed-off-by: Lon Hohberger <lhh at redhat.com>
---
 rgmanager/src/clulib/msg_cluster.c |    7 ++++++-
 1 files changed, 6 insertions(+), 1 deletions(-)

diff --git a/rgmanager/src/clulib/msg_cluster.c b/rgmanager/src/clulib/msg_cluster.c
index 136b376..005ffc1 100644
--- a/rgmanager/src/clulib/msg_cluster.c
+++ b/rgmanager/src/clulib/msg_cluster.c
@@ -17,6 +17,8 @@
 #include <cman-private.h>
 #include <logging.h>
 
+static void process_cman_event(cman_handle_t handle, void *private,
+			       int reason, int arg);
 /* Ripped from ccsd's setup_local_socket */
 
 int cluster_msg_close(msgctx_t *ctx);
@@ -189,7 +191,10 @@ poll_cluster_messages(int timeout)
 			return -1;
 		}
 
-		cman_dispatch(ch, 0);
+		if (cman_dispatch(ch, 0) < 0) {
+			process_cman_event(ch, NULL,
+					   CMAN_REASON_TRY_SHUTDOWN, 0);
+		}
 		ret = 0;
 	}
 	cman_unlock(ch);


More information about the cluster-commits mailing list