cluster: RHEL56 - rgmanager: Do hard shut down if CMAN dies

Lon Hohberger lon at fedoraproject.org
Fri Oct 29 13:59:50 UTC 2010


Gitweb:        http://git.fedorahosted.org/git/cluster.git?p=cluster.git;a=commitdiff;h=848f084f51e9890e41071e8a58b3878cedce0dd7
Commit:        848f084f51e9890e41071e8a58b3878cedce0dd7
Parent:        fdc3fe8a59220c3c09f9b3887b2855e1fa447655
Author:        Lon Hohberger <lhh at redhat.com>
AuthorDate:    Wed May 5 09:13:08 2010 -0400
Committer:     Lon Hohberger <lhh at redhat.com>
CommitterDate: Fri Oct 29 09:56:19 2010 -0400

rgmanager: Do hard shut down if CMAN dies

Resolves: rhbz#639961

Signed-off-by: Lon Hohberger <lhh at redhat.com>
Reviewed-by: Fabio M. Di Nitto <fdinitto 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 4ec3750..8dc22d0 100644
--- a/rgmanager/src/clulib/msg_cluster.c
+++ b/rgmanager/src/clulib/msg_cluster.c
@@ -35,6 +35,8 @@
 #include <cman-private.h>
 #include <clulog.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);
@@ -207,7 +209,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