[Cluster-devel] cluster/group/dlm_controld dlm_daemon.h main.c

teigland at sourceware.org teigland at sourceware.org
Fri Feb 9 16:05:39 UTC 2007


CVSROOT:	/cvs/cluster
Module name:	cluster
Branch: 	RHEL5
Changes by:	teigland at sourceware.org	2007-02-09 16:05:39

Modified files:
	group/dlm_controld: dlm_daemon.h main.c 

Log message:
	clear configfs stuff if we get SIGTERM, this is a convenience if you
	want to kill dlm_controld and remove the dlm module without leaving
	the cluster.  Otherwise you have to manually clear configfs dirs.

Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/cluster/group/dlm_controld/dlm_daemon.h.diff?cvsroot=cluster&only_with_tag=RHEL5&r1=1.5.2.1&r2=1.5.2.2
http://sourceware.org/cgi-bin/cvsweb.cgi/cluster/group/dlm_controld/main.c.diff?cvsroot=cluster&only_with_tag=RHEL5&r1=1.6.2.2&r2=1.6.2.3

--- cluster/group/dlm_controld/dlm_daemon.h	2007/01/09 19:18:18	1.5.2.1
+++ cluster/group/dlm_controld/dlm_daemon.h	2007/02/09 16:05:38	1.5.2.2
@@ -39,6 +39,7 @@
 #include <time.h>
 #include <syslog.h>
 #include <sched.h>
+#include <signal.h>
 #include <linux/netlink.h>
 
 #include "list.h"
--- cluster/group/dlm_controld/main.c	2007/01/09 19:18:18	1.6.2.2
+++ cluster/group/dlm_controld/main.c	2007/02/09 16:05:38	1.6.2.3
@@ -23,6 +23,11 @@
 
 extern group_handle_t gh;
 
+static void sigterm_handler(int sig)
+{
+	if (list_empty(&lockspaces))
+		clear_configfs();
+}
 
 struct lockspace *create_ls(char *name)
 {
@@ -423,6 +428,8 @@
 	if (!daemon_debug_opt)
 		daemonize();
 
+	signal(SIGTERM, sigterm_handler);
+
 	set_scheduler();
 
 	return loop();




More information about the Cluster-devel mailing list