[Pacemaker] [PATCH 1/8 ] cl_log: Make functions static and remove CircularBuffer
Bernd Schubert
bs_lists at aakef.fastmail.fm
Wed Sep 15 22:11:39 UTC 2010
cl_log: Make functions static and remove CircularBuffer
CircularBuffer was added more than 5 years ago and still it is not used.
So remove dead code, it can be retrieved from the repository history
if required.
Also make functions static only used with cl_log.c
Signed-off-by: Bernd Schubert <bschubert at ddn.com>
diff --git a/include/clplumbing/cl_log.h b/include/clplumbing/cl_log.h
--- a/include/clplumbing/cl_log.h
+++ b/include/clplumbing/cl_log.h
@@ -39,7 +39,6 @@ void cl_log(int priority, con
void cl_perror(const char * fmt, ...) G_GNUC_PRINTF(1,2);
void cl_log_enable_stderr(int truefalse);
void cl_log_enable_stdout(int truefalse);
-int cl_set_logging_wqueue_maxlen(int);
gboolean cl_log_test_logd(void);
void cl_log_set_uselogd(int truefalse);
void cl_log_enable_syslog_filefmt(int truefalse);
@@ -48,7 +47,6 @@ void cl_log_set_facility(int facility);
void cl_log_set_entity(const char * entity);
void cl_log_set_logfile(const char * path);
void cl_log_set_debugfile(const char * path);
-void inherit_compress(void);
void cl_inherit_logging_environment(int maxqlen);
int cl_log_set_logd_channel_source( void (*create_callback)(struct IPC_CHANNEL* chan),
GDestroyNotify destroy_callback);
@@ -64,31 +62,4 @@ void cl_flush_logs(void);
void cl_log_args(int argc, char **argv);
int cl_log_is_logd_fd(int fd);
-
-typedef struct CircularBuffer_s
-{
- const char* name;
- size_t size;
- gboolean empty_after_dump;
- GQueue* queue;
-
-} CircularBuffer_t;
-
-typedef struct CircularBufferEntry_s
-{
- int level;
- char *buf;
-
-} CircularBufferEntry_t;
-
-CircularBuffer_t *NewCircularBuffer(
- const char *name, unsigned int size, gboolean empty_after_dump);
-void LogToCircularBuffer(
- CircularBuffer_t *buffer, int level, const char *fmt, ...) G_GNUC_PRINTF(3,4);
-
-void EmptyCircularBuffer(CircularBuffer_t *buffer);
-
-/* the prototype is designed to be easy to give to G_main_add_SignalHandler() */
-gboolean DumpCircularBuffer(int nsig, gpointer buffer);
-
#endif
diff --git a/lib/clplumbing/cl_log.c b/lib/clplumbing/cl_log.c
--- a/lib/clplumbing/cl_log.c
+++ b/lib/clplumbing/cl_log.c
@@ -69,12 +69,12 @@ static gboolean syslogformatfile = TRUE
int LogToDaemon(int priority, const char * buf, int bstrlen, gboolean use_pri_str);
static int LogToLoggingDaemon(int priority, const char * buf, int bstrlen, gboolean use_pri_str);
-IPC_Message* ChildLogIPCMessage(int priority, const char *buf, int bstrlen,
+static IPC_Message* ChildLogIPCMessage(int priority, const char *buf, int bstrlen,
gboolean use_priority_str, IPC_Channel* ch);
-void FreeChildLogIPCMessage(IPC_Message* msg);
-gboolean send_dropped_message(gboolean use_pri_str, IPC_Channel *chan);
+static void FreeChildLogIPCMessage(IPC_Message* msg);
+static gboolean send_dropped_message(gboolean use_pri_str, IPC_Channel *chan);
+static int cl_set_logging_wqueue_maxlen(int qlen);
-const char * prio2str(int priority);
static int use_logging_daemon = FALSE;
static int conn_logd_time = 0;
static char cl_log_entity[MAXENTITY]= DFLT_ENTITY;
@@ -173,7 +173,7 @@ cl_log_set_logdtime(int logdtime)
#define TRADITIONAL_COMPRESSION "HA_traditional_compression"
#define COMPRESSION "HA_compression"
-void
+static void
inherit_compress(void)
{
char* inherit_env = NULL;
@@ -366,6 +366,17 @@ cl_log_test_logd(void)
}
+static void
+cl_opensyslog(void)
+{
+ if (*cl_log_entity == '\0' || cl_log_facility < 0) {
+ return;
+ }
+ strncpy(common_log_entity, cl_log_entity, MAXENTITY);
+ openlog(common_log_entity, LOG_CONS, cl_log_facility);
+ syslog_enabled = 1;
+}
+
/* FIXME: This is way too ugly to bear */
void
@@ -445,7 +456,7 @@ cl_log_set_logd_channel_source( void (*c
return 0;
}
-const char *
+static const char *
prio2str(int priority)
{
static const char *log_prio[8] = {
@@ -734,7 +745,7 @@ ha_timestamp(TIME_T t)
}
-int
+static int
cl_set_logging_wqueue_maxlen(int qlen)
{
int sendrc;
@@ -897,7 +908,7 @@ LogToLoggingDaemon(int priority, const c
}
-gboolean
+static gboolean
send_dropped_message(gboolean use_pri_str, IPC_Channel *chan)
{
int sendrc;
@@ -924,27 +935,7 @@ send_dropped_message(gboolean use_pri_st
return sendrc == IPC_OK;
}
-
-
-
-static int childlog_ipcmsg_allocated = 0;
-static int childlog_ipcmsg_freed = 0;
-void childlog_dump_ipcmsg_stats(void);
-void
-childlog_dump_ipcmsg_stats(void)
-{
-
- cl_log(LOG_INFO, "childlog ipcmsg allocated:%d, freed=%d, diff =%d",
- childlog_ipcmsg_allocated,
- childlog_ipcmsg_freed,
- childlog_ipcmsg_allocated - childlog_ipcmsg_freed);
-
- return;
-
-
-}
-
-IPC_Message*
+static IPC_Message*
ChildLogIPCMessage(int priority, const char *buf, int bufstrlen,
gboolean use_prio_str, IPC_Channel* ch)
{
@@ -1003,13 +994,11 @@ ChildLogIPCMessage(int priority, const c
ret->msg_done = FreeChildLogIPCMessage;
ret->msg_ch = ch;
- childlog_ipcmsg_allocated++;
-
return ret;
}
-void
+static void
FreeChildLogIPCMessage(IPC_Message* msg)
{
if (msg == NULL) {
@@ -1021,140 +1010,10 @@ FreeChildLogIPCMessage(IPC_Message* msg)
memset(msg, 0, sizeof (*msg));
free(msg);
- childlog_ipcmsg_freed ++;
-
return;
}
-
-
-static void
-cl_opensyslog(void)
-{
- if (*cl_log_entity == '\0' || cl_log_facility < 0) {
- return;
- }
- syslog_enabled = 1;
- strncpy(common_log_entity, cl_log_entity, MAXENTITY);
- openlog(common_log_entity, LOG_CONS, cl_log_facility);
-}
-
-/* What a horrible substitute for a low-overhead event log!! - FIXME!! */
-
-CircularBuffer_t *
-NewCircularBuffer(const char *name, uint size, gboolean empty_after_dump)
-{
- CircularBuffer_t *buffer = malloc(sizeof(CircularBuffer_t));
- if (!buffer) {
- return buffer;
- }
- buffer->name = name;
- buffer->size = size;
- buffer->empty_after_dump = empty_after_dump;
- buffer->queue = g_queue_new();
-
-#if 1
- if(empty_after_dump == FALSE) {
- cl_log(LOG_ERR, "This requires glib 2.4");
- empty_after_dump = TRUE;
- }
-#endif
-
- return buffer;
-}
-
-void
-LogToCircularBuffer(CircularBuffer_t *buffer, int level, const char *fmt, ...)
-{
- va_list ap;
- char buf[MAXLINE];
- int nbytes;
- CircularBufferEntry_t *entry = malloc(sizeof(CircularBufferEntry_t));
-
- if (!entry) {
- return;
- }
- va_start(ap, fmt);
- nbytes=vsnprintf(buf, MAXLINE, fmt, ap);
- /* nbytes=vasprintf(&buf, fmt, ap); */
- va_end(ap);
-
- entry->buf = buf;
- entry->level = level;
-
- g_queue_push_tail(buffer->queue, entry);
-
- while(buffer->queue->length > buffer->size) {
- entry = g_queue_pop_head(buffer->queue);
- free(entry->buf);
- free(entry);
- }
-}
-
-void
-EmptyCircularBuffer(CircularBuffer_t *buffer)
-{
- CircularBufferEntry_t *entry = NULL;
- while(buffer->queue->length > 0) {
- entry = g_queue_pop_head(buffer->queue);
- free(entry->buf);
- free(entry);
- }
-}
-
-gboolean
-DumpCircularBuffer(int nsig, gpointer user_data)
-{
- CircularBuffer_t *buffer = user_data;
- CircularBufferEntry_t *entry = NULL;
-
- if(buffer == NULL) {
- /* error */
- cl_log(LOG_ERR, "No buffer supplied to dump.");
- return FALSE;
- }
-
- if(logging_daemon_chan != NULL
- && logging_daemon_chan->send_queue->max_qlen < buffer->size) {
- /* We have no hope of getting the whole buffer out via the
- * logging daemon. Use direct log instead so the messages
- * come out in the right order.
- */
- cl_log_depth++;
- }
-
- cl_log(LOG_INFO, "Mark: Begin dump of buffer %s", buffer->name);
- if(buffer->empty_after_dump) {
- while(buffer->queue->length > 0) {
- entry = g_queue_pop_head(buffer->queue);
- cl_log(entry->level, "%s", entry->buf);
- free(entry->buf);
- free(entry);
- }
-
- } else {
-#if 1
- cl_log(LOG_ERR, "This requires g_queue_peek_nth() from glib 2.4");
-#else
- uint lpc = 0;
- uint queue_len = buffer->queue->length;
- for(lpc = 0; lpc < queue_len; lpc++) {
- entry = g_queue_peek_nth(buffer->queue, lpc);
- cl_log(entry->level, "%s", entry->buf);
- }
-#endif
- }
- if(logging_daemon_chan != NULL
- && logging_daemon_chan->send_queue->max_qlen < buffer->size) {
- /* Return is back to normal */
- cl_log_depth--;
- }
- cl_log(LOG_INFO, "Mark: End dump of buffer %s", buffer->name);
- return TRUE;
-}
-
-
void
cl_log_args(int argc, char **argv)
{
--
Bernd Schubert
DataDirect Networks
More information about the Pacemaker
mailing list