On Wed, 2008-04-16 at 14:15 -0400, Lon Hohberger wrote:
Actually attach it ;)
-- Lon
Index: test/Makefile
===================================================================
--- test/Makefile (revision 1516)
+++ test/Makefile (working copy)
@@ -161,13 +161,13 @@
$(CC) $(LDFLAGS) -o openais-cfgtool openais-cfgtool.o $(LIBS)
logsys_s: logsys_s.o logsys_s1.o logsys_s2.o ../exec/liblogsys.a
- $(CC) $(LDFLAGS) -o logsys_s logsys_s.o logsys_s1.o logsys_s2.o ../exec/liblogsys.a
+ $(CC) $(LDFLAGS) -o logsys_s logsys_s.o logsys_s1.o logsys_s2.o ../exec/liblogsys.a -lpthread
logsys_t1: logsys_t1.o ../exec/liblogsys.a
- $(CC) $(LDFLAGS) -o logsys_t1 logsys_t1.o ../exec/liblogsys.a
+ $(CC) $(LDFLAGS) -o logsys_t1 logsys_t1.o ../exec/liblogsys.a -lpthread
logsys_t2: logsys_t2.o ../exec/liblogsys.a
- $(CC) $(LDFLAGS) -o logsys_t2 logsys_t2.o ../exec/liblogsys.a
+ $(CC) $(LDFLAGS) -o logsys_t2 logsys_t2.o ../exec/liblogsys.a -lpthread
clean:
rm -f *.o $(LIBRARIES) $(BINARIES)
Index: exec/Makefile
===================================================================
--- exec/Makefile (revision 1516)
+++ exec/Makefile (working copy)
@@ -175,7 +175,7 @@
endif
aisexec: $(EXEC_OBJS) $(EXEC_LIBS)
- $(CC) $(LDFLAGS) $(EXEC_OBJS) $(EXEC_LIBS) -o aisexec
+ $(CC) $(LDFLAGS) $(EXEC_OBJS) $(EXEC_LIBS) -o aisexec -lpthread
libtotem_pg.a: $(TOTEM_OBJS)
$(AR) -rc libtotem_pg.a $(TOTEM_OBJS)
Index: exec/logsys.c
===================================================================
--- exec/logsys.c (revision 1516)
+++ exec/logsys.c (working copy)
@@ -255,7 +255,8 @@
{
struct log_data *log_data = (struct log_data *)work_item;
- pthread_mutex_lock (&logsys_config_mutex);
+ if (logsys_wthread_active)
+ pthread_mutex_lock (&logsys_config_mutex);
/*
* Output the log data
*/
@@ -273,7 +274,8 @@
&log_data->log_string[log_data->syslog_pos]);
}
free (log_data->log_string);
- pthread_mutex_unlock (&logsys_config_mutex);
+ if (logsys_wthread_active)
+ pthread_mutex_unlock (&logsys_config_mutex);
}
static void _log_printf (
@@ -467,6 +469,14 @@
pthread_mutex_unlock (&logsys_new_log_mutex);
}
+static void child_cleanup (void)
+{
+ memset(&log_thread_group, 0, sizeof(log_thread_group));
+ logsys_wthread_active = 0;
+ pthread_mutex_init(&logsys_config_mutex, NULL);
+ pthread_mutex_init(&logsys_new_log_mutex, NULL);
+}
+
int _logsys_wthread_create (void)
{
worker_thread_group_init (
@@ -481,6 +491,7 @@
logsys_flush();
atexit (logsys_atexit);
+ pthread_atfork(NULL, NULL, child_cleanup);
if (logsys_mode & LOG_MODE_OUTPUT_SYSLOG_THREADED && logsys_name != NULL) {
openlog (logsys_name, LOG_CONS|LOG_PID, logsys_facility);
Index: Makefile.inc
===================================================================
--- Makefile.inc (revision 1516)
+++ Makefile.inc (working copy)
@@ -45,7 +45,7 @@
# default CFLAGS, LDFLAGS
#
-CFLAGS =
+CFLAGS = -g
LDFLAGS =
DYFLAGS =
_______________________________________________
Openais mailing list
[email protected]
https://lists.linux-foundation.org/mailman/listinfo/openais