[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

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



CVSROOT:	/cvs/cluster
Module name:	cluster
Changes by:	teigland sourceware org	2007-02-09 16:05:30

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&r1=1.6&r2=1.7
http://sourceware.org/cgi-bin/cvsweb.cgi/cluster/group/dlm_controld/main.c.diff?cvsroot=cluster&r1=1.8&r2=1.9

--- cluster/group/dlm_controld/dlm_daemon.h	2007/01/09 19:17:08	1.6
+++ cluster/group/dlm_controld/dlm_daemon.h	2007/02/09 16:05:30	1.7
@@ -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:17:08	1.8
+++ cluster/group/dlm_controld/main.c	2007/02/09 16:05:30	1.9
@@ -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();


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]