summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAJ Lewis <alewis@redhat.com>2005-04-28 22:47:52 +0000
committerAJ Lewis <alewis@redhat.com>2005-04-28 22:47:52 +0000
commitab8bdc18bb0d3b34ff344427c9a4a00ee8f0a60f (patch)
tree2dfafe30eb68c40b764b74c07bab5007a48edc60
parentc9dcd7442aa359ef53de011d7859df95d660b790 (diff)
downloadlvm2-ab8bdc18bb0d3b34ff344427c9a4a00ee8f0a60f.tar.gz
-rw-r--r--daemons/dmeventd/.exported_symbols2
-rw-r--r--daemons/dmeventd/Makefile.in4
-rw-r--r--daemons/dmeventd/dmeventd.c21
3 files changed, 14 insertions, 13 deletions
diff --git a/daemons/dmeventd/.exported_symbols b/daemons/dmeventd/.exported_symbols
index b88c70501..4854e9828 100644
--- a/daemons/dmeventd/.exported_symbols
+++ b/daemons/dmeventd/.exported_symbols
@@ -1,3 +1,3 @@
process_event
register_device
-unregister_device
+unregister_device \ No newline at end of file
diff --git a/daemons/dmeventd/Makefile.in b/daemons/dmeventd/Makefile.in
index 41296ac60..01b5cf24d 100644
--- a/daemons/dmeventd/Makefile.in
+++ b/daemons/dmeventd/Makefile.in
@@ -36,11 +36,11 @@ libdmeventnoop.so: noop.o
dmevent: dmevent.o $(interfacedir)/libdevmapper.$(LIB_SUFFIX) $(top_srcdir)/lib/event/libdmevent.$(LIB_SUFFIX)
$(CC) -o $@ dmevent.o $(LDFLAGS) \
- -L$(interfacedir) -L$(DESTDIR)/lib -L$(top_srcdir)/lib/event -ldevmapper -ldmevent $(LIBS)
+ -L$(interfacedir) -L$(DESTDIR)/lib -L$(top_srcdir)/lib/event -L$(top_srcdir)/multilog -lmultilog -ldmevent $(LIBS)
dmeventd: dmeventd.o $(interfacedir)/libdevmapper.$(LIB_SUFFIX) $(top_srcdir)/lib/event/libdmevent.$(LIB_SUFFIX)
$(CC) -o $@ dmeventd.o $(LDFLAGS) \
- -L$(interfacedir) -L$(DESTDIR)/lib -L$(top_srcdir)/lib/event -ldevmapper -ldmevent $(LIBS)
+ -L$(interfacedir) -L$(DESTDIR)/lib -L$(top_srcdir)/lib/event -L$(top_srcdir)/multilog -ldmevent -lmultilog $(LIBS)
install: $(INSTALL_TYPE)
diff --git a/daemons/dmeventd/dmeventd.c b/daemons/dmeventd/dmeventd.c
index 002598c0f..e7e990c93 100644
--- a/daemons/dmeventd/dmeventd.c
+++ b/daemons/dmeventd/dmeventd.c
@@ -22,6 +22,7 @@
#include "log.h"
#include "libdm-event.h"
#include "list.h"
+#include "libmultilog.h"
#include <dlfcn.h>
#include <errno.h>
@@ -41,16 +42,6 @@
#include <sys/wait.h>
#include <unistd.h>
-/*
- * Macros to be moved external later...
- */
-#undef log_print
-#undef log_err
-#undef stack
-#define log_print(x...) fprintf(stdout, "[dmeventd] " x)
-#define log_err(x...) fprintf(stderr, "ERROR: " x)
-#define stack log_print("trace: %s:%s(%d)\n", \
- __FILE__, __func__, __LINE__);
#define dbg_malloc(x...) malloc(x)
#define dbg_strdup(x...) strdup(x)
@@ -964,6 +955,7 @@ int main(void)
{
int ret = 0;
struct fifos fifos;
+ pthread_t log_thread = {0};
switch (daemonize()) {
case 1: /* Child. */
@@ -975,6 +967,15 @@ int main(void)
init_thread_signals();
kill(getppid(), SIGHUP);
+
+ /* Startup the syslog thread now so log_* macros work */
+ if(!start_syslog_thread(&log_thread, 100)) {
+ fprintf(stderr, "Could not start logging thread\n");
+ munlockall();
+ pthread_mutex_destroy(&mutex);
+ break;
+ }
+
init_fifos(&fifos);
pthread_mutex_init(&mutex, NULL);