rpms/openais/FC-6 revision-1293.patch, NONE, 1.1 revision-1294.patch, NONE, 1.1 revision-1295.patch, NONE, 1.1 revision-1296.patch, NONE, 1.1 openais.spec, 1.20, 1.21

fedora-cvs-commits at redhat.com fedora-cvs-commits at redhat.com
Thu Nov 9 12:49:59 UTC 2006


Author: sdake

Update of /cvs/dist/rpms/openais/FC-6
In directory cvs.devel.redhat.com:/tmp/cvs-serv13433/FC-6

Modified Files:
	openais.spec 
Added Files:
	revision-1293.patch revision-1294.patch revision-1295.patch 
	revision-1296.patch 
Log Message:
auto-import openais-0.80.1-14 on branch FC-6 from openais-0.80.1-14.src.rpm

revision-1293.patch:
 main.c    |   16 ++++++++++++++--
 print.c   |   25 +++++++++++++++++++++++--
 print.h   |    2 ++
 wthread.c |   20 +++++++++++++++++---
 wthread.h |    3 +++
 5 files changed, 59 insertions(+), 7 deletions(-)

--- NEW FILE revision-1293.patch ---
Index: exec/print.h
===================================================================
--- exec/print.h	(revision 1292)
+++ exec/print.h	(revision 1293)
@@ -122,6 +122,8 @@
 	logger_identifier = _log_init (ident);
 }
 
+extern void log_atsegv (void);
+
 #define log_printf(lvl, format, args...) do { \
     if ((lvl) <= loggers[logger_identifier].level)	{ \
 		internal_log_printf2 (__FILE__, __LINE__, lvl, logger_identifier, format, ##args);  \
Index: exec/wthread.c
===================================================================
--- exec/wthread.c	(revision 1292)
+++ exec/wthread.c	(revision 1293)
@@ -63,8 +63,6 @@
 
 void *worker_thread (void *thread_data_in) {
 	struct thread_data *thread_data = (struct thread_data *)thread_data_in;
-	struct orf_token_mcast_thread_state *orf_token_mcast_thread_state =
-		(struct orf_token_mcast_thread_state *)thread_data->thread_state;
 	struct worker_thread *worker_thread =
 		(struct worker_thread *)thread_data->data;
 	void *data_for_worker_fn;
@@ -83,7 +81,7 @@
 	  	 */
 		data_for_worker_fn = queue_item_get (&worker_thread->queue);
 		pthread_mutex_unlock (&worker_thread->new_work_mutex);
-		worker_thread->worker_thread_group->worker_fn (orf_token_mcast_thread_state, data_for_worker_fn);
+		worker_thread->worker_thread_group->worker_fn (worker_thread->thread_state, data_for_worker_fn);
 		pthread_mutex_lock (&worker_thread->new_work_mutex);
 		queue_item_remove (&worker_thread->queue);
 		pthread_mutex_unlock (&worker_thread->new_work_mutex);
@@ -190,3 +188,19 @@
 		pthread_cond_destroy (&worker_thread_group->threads[i].done_work_cond);
 	}
 }
+void worker_thread_group_atsegv (
+	struct worker_thread_group *worker_thread_group)
+{
+	void *data_for_worker_fn;
+	struct worker_thread *worker_thread;
+	unsigned int i;
+
+	for (i = 0; i < worker_thread_group->threadcount; i++) {
+		worker_thread = &worker_thread_group->threads[i];
+		while (queue_is_empty (&worker_thread->queue) == 0) {
+			data_for_worker_fn = queue_item_get (&worker_thread->queue);
+			worker_thread->worker_thread_group->worker_fn (worker_thread->thread_state, data_for_worker_fn);
+			queue_item_remove (&worker_thread->queue);
+		}
+	}
+}
Index: exec/wthread.h
===================================================================
--- exec/wthread.h	(revision 1292)
+++ exec/wthread.h	(revision 1293)
@@ -61,4 +61,7 @@
 extern void worker_thread_group_exit (
 	struct worker_thread_group *worker_thread_group);
 
+extern void worker_thread_group_atsegv (
+	struct worker_thread_group *worker_thread_group);
+
 #endif /* WTHREAD_H_DEFINED */
Index: exec/main.c
===================================================================
--- exec/main.c	(revision 1292)
+++ exec/main.c	(revision 1293)
@@ -105,6 +105,15 @@
 	}
 }
 
+static void sigsegv_handler (int num)
+{
+	unsigned int res;
+
+	signal (SIGSEGV, SIG_DFL);
+	log_atsegv ();
+	raise (SIGSEGV);
+}
+
 struct totem_ip_address *this_ip;
 struct totem_ip_address this_non_loopback_ip;
 #define LOCALHOST_IP inet_addr("127.0.0.1")
@@ -376,6 +385,7 @@
 	char *config_iface;
 	int res;
  	int totem_log_service;
+char *a = NULL;
  	log_init ("MAIN");
 
 	aisexec_tty_detach ();
@@ -392,10 +402,14 @@
 
 	signal (SIGUSR2, sigusr2_handler);
 
+	signal (SIGSEGV, sigsegv_handler);
+
 	openais_timer_init (
 		serialize_mutex_lock,
 		serialize_mutex_unlock);
 
+	log_printf (LOG_LEVEL_NOTICE, "AIS Executive Service: started and ready to provide service.\n");
+
 	aisexec_poll_handle = poll_create (
 		serialize_mutex_lock,
 		serialize_mutex_unlock);
@@ -562,8 +576,6 @@
 		gid_valid,
 		&this_non_loopback_ip);
 
-	log_printf (LOG_LEVEL_NOTICE, "AIS Executive Service: started and ready to provide service.\n");
-
 	/*
 	 * Start main processing loop
 	 */
Index: exec/print.c
===================================================================
--- exec/print.c	(revision 1292)
+++ exec/print.c	(revision 1293)
@@ -62,6 +62,11 @@
 #include "mainconfig.h"
 #include "wthread.h"
 
+struct sockaddr_un syslog_sockaddr = {
+	sun_family: AF_UNIX,
+	sun_path: "/dev/log"
+};
+
 static unsigned int logmode = LOG_MODE_BUFFER | LOG_MODE_STDERR | LOG_MODE_SYSLOG;
 
 static char *logfile = 0;
@@ -99,6 +104,8 @@
 	char *log_string;
 };
 
+static void log_atexit (void);
+
 static int logger_init (const char *ident, int tags, int level, int mode)
 {
 	int i;
@@ -322,8 +329,6 @@
 			config->logger[i].mode);
 	}
 
-	log_setup_called = 1;
-
 	worker_thread_group_init (
 		&log_thread_group,
 		1,
@@ -333,6 +338,7 @@
 		NULL,
 		log_printf_worker_fn);
 
+	log_setup_called = 1;
 
 	/*
 	** Flush what we have buffered
@@ -341,6 +347,7 @@
 
 	internal_log_printf(__FILE__, __LINE__, LOG_LEVEL_DEBUG, "log setup\n");
 
+	atexit (log_atexit);
 	return (0);
 }
 
@@ -405,3 +412,17 @@
 
 	head = tail = NULL;
 }
+
+static void log_atexit (void)
+{
+	if (log_setup_called) {
+		worker_thread_group_wait (&log_thread_group);
+	}
+}
+
+void log_atsegv (void)
+{
+	log_setup_called = 0;
+	worker_thread_group_exit (&log_thread_group);
+	worker_thread_group_atsegv (&log_thread_group);
+}

revision-1294.patch:
 totemsrp.c |   18 ++++++++++++++----
 1 files changed, 14 insertions(+), 4 deletions(-)

--- NEW FILE revision-1294.patch ---
Index: exec/totemsrp.c
===================================================================
--- exec/totemsrp.c	(revision 1293)
+++ exec/totemsrp.c	(revision 1294)
@@ -602,6 +602,8 @@
 	}
 };
 
+static char *rundir = NULL;
+
 #define log_printf(level, format, args...) \
     instance->totemsrp_log_printf (__FILE__, __LINE__, level, format, ##args)
 
@@ -686,6 +688,14 @@
 		goto error_destroy;
 	}
 
+	rundir = getenv ("OPENAIS_RUN_DIR");
+	if (rundir == NULL) {
+		rundir = "/var/run/openais";
+	}
+	
+	res = mkdir (rundir, 0700);
+	chdir (rundir);
+
 	totemsrp_instance_initialize (instance);
 
 	instance->totem_config = totem_config;
@@ -2807,9 +2817,9 @@
 	int res;
 	char filename[256];
 
-	sprintf (filename, "/tmp/ringid_%s",
-		totemip_print (&instance->my_id.addr[0]));
-	fd = open (filename, O_RDONLY, 0777);
+	sprintf (filename, "%s/ringid_%s",
+		rundir, totemip_print (&instance->my_id.addr[0]));
+	fd = open (filename, O_RDONLY, 0700);
 	if (fd > 0) {
 		res = read (fd, &memb_ring_id->seq, sizeof (unsigned long long));
 		assert (res == sizeof (unsigned long long));
@@ -2818,7 +2828,7 @@
 	if (fd == -1 && errno == ENOENT) {
 		memb_ring_id->seq = 0;
 		umask(0);
-		fd = open (filename, O_CREAT|O_RDWR, 0777);
+		fd = open (filename, O_CREAT|O_RDWR, 0700);
 		if (fd == -1) {
 			log_printf (instance->totemsrp_log_level_warning,
 				"Couldn't create %s %s\n", filename, strerror (errno));

revision-1295.patch:
 totemconfig.c |    4 ++--
 totemsrp.c    |    4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

--- NEW FILE revision-1295.patch ---
Index: exec/totemsrp.c
===================================================================
--- exec/totemsrp.c	(revision 1294)
+++ exec/totemsrp.c	(revision 1295)
@@ -1809,7 +1809,7 @@
 			memb_list[i].high_delivered,
 			memb_list[i].received_flg);
 
-// TODO		assert (!totemip_zero_check(&memb_list[i].ring_id.rep));
+	//	assert (totemip_print (&memb_list[i].ring_id.rep) != 0);
 	}
 	/*
 	 * Determine if any received flag is false
@@ -2759,7 +2759,7 @@
 	assert (memb_join.header.nodeid);
 
 	assert (srp_addr_equal (&instance->my_proc_list[0], &instance->my_proc_list[1]) == 0);
-	memb_join.ring_seq = instance->token_ring_id_seq;
+	memb_join.ring_seq = instance->my_ring_id.seq;
 	memb_join.proc_list_entries = instance->my_proc_list_entries;
 	memb_join.failed_list_entries = instance->my_failed_list_entries;
 	srp_addr_copy (&memb_join.system_from, &instance->my_id);
Index: exec/totemconfig.c
===================================================================
--- exec/totemconfig.c	(revision 1294)
+++ exec/totemconfig.c	(revision 1295)
@@ -61,8 +61,8 @@
 #define TOKEN_TIMEOUT				1000
 #define TOKEN_RETRANSMIT_TIMEOUT		(int)(TOKEN_TIMEOUT / (TOKEN_RETRANSMITS_BEFORE_LOSS_CONST + 0.2))
 #define TOKEN_HOLD_TIMEOUT			(int)(TOKEN_RETRANSMIT_TIMEOUT * 0.8 - (1000/(int)HZ))
-#define JOIN_TIMEOUT				100
-#define CONSENSUS_TIMEOUT			200
+#define JOIN_TIMEOUT				50
+#define CONSENSUS_TIMEOUT			800
 #define MERGE_TIMEOUT				200
 #define DOWNCHECK_TIMEOUT			1000000
 #define FAIL_TO_RECV_CONST			50

revision-1296.patch:
 main.c |    3 ---
 1 files changed, 3 deletions(-)

--- NEW FILE revision-1296.patch ---
Index: exec/main.c
===================================================================
--- exec/main.c	(revision 1295)
+++ exec/main.c	(revision 1296)
@@ -107,8 +107,6 @@
 
 static void sigsegv_handler (int num)
 {
-	unsigned int res;
-
 	signal (SIGSEGV, SIG_DFL);
 	log_atsegv ();
 	raise (SIGSEGV);
@@ -385,7 +383,6 @@
 	char *config_iface;
 	int res;
  	int totem_log_service;
-char *a = NULL;
  	log_init ("MAIN");
 
 	aisexec_tty_detach ();


Index: openais.spec
===================================================================
RCS file: /cvs/dist/rpms/openais/FC-6/openais.spec,v
retrieving revision 1.20
retrieving revision 1.21
diff -u -r1.20 -r1.21
--- openais.spec	4 Nov 2006 04:41:24 -0000	1.20
+++ openais.spec	9 Nov 2006 12:49:56 -0000	1.21
@@ -1,7 +1,7 @@
 Name: openais
 Summary: The openais Standards-Based Cluster Framework executive and APIs
 Version: 0.80.1
-Release: 12%{?dist}
+Release: 14%{?dist}
 License: BSD
 Group: System Environment/Base
 URL: http://developer.osdl.org/dev/openais/
@@ -36,6 +36,10 @@
 Patch27: revision-1283.patch
 Patch28: revision-1284.patch
 Patch29: revision-1286.patch
+Patch30: revision-1293.patch
+Patch31: revision-1294.patch
+Patch32: revision-1295.patch
+Patch33: revision-1296.patch
 
 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
 ExclusiveArch: i386 ppc x86_64 ppc64 ia64 s390 s390x
@@ -90,6 +94,10 @@
 %patch27
 %patch28
 %patch29
+%patch30
+%patch31
+%patch32
+%patch33
 
 %build
 # -O3 required for performance reasons
@@ -223,6 +231,19 @@
 %{_mandir}/man3/evs_membership_get.3*
 
 %changelog
+* Thu Nov 9 2006 Steven Dake <sdake at redhat.com> - 0.80.1-14
+- Add upstream revision 1296 - Remove compile warnings.
+- Add upstream revision 1295 - The totem membership protocol was changed to
+- Add upstream revision 1294 - modify location of ringid file to
+- Add upstream revision 1293 - flush output of debug messages on exit or segv.
+  /var/run/openais and chdir here so cores are saved there.
+  match specifications.
+- This is the fc6 version.
+
+* Fri Nov 3 2006 Steven Dake <sdake at redhat.com> - 0.80.1-13
+- Add upstream revision 1286 - Fix checkpoint unlink operation under certain
+  conditions.  This is the rhel5 version.
+
 * Fri Nov 3 2006 Steven Dake <sdake at redhat.com> - 0.80.1-12
 - Add upstream revision 1286 - Fix checkpoint unlink operation under certain
   conditions.  This is the fc6 version.




More information about the fedora-cvs-commits mailing list