From b49322b568725c8c92c0732b14cc726748ec57d3 Mon Sep 17 00:00:00 2001 From: Thomas Haller Date: Thu, 10 Mar 2016 11:15:32 +0100 Subject: [PATCH] logging: use non-fatal logging level for glib backend In our usage of glib logging, every g_critical()/g_return*()/g_warning() is considered a bug. They must not occur in a regular program run, so that we can run NetworkManager with G_DEBUG=fatal-warnings. On the other hand, all nm_log() statements (even with severity ) are valid conditions that can occur at runtime. As a consequence, when nm-logging uses glib as backend, we must not use G_LOG_LEVEL_WARNING level. Otherwise $ /usr/sbin/NetworkManager --debug --g-fatal-warnings will dump core on the message " glib-version: cannot handle SIGUSR1 and SIGUSR2 signals. Consider upgrading glib to 2.36.0 or newer" Thereby, downgrade the glib level for "" to G_LOG_LEVEL_INFO. --- src/nm-logging.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/nm-logging.c b/src/nm-logging.c index 16951764e..704c77c96 100644 --- a/src/nm-logging.c +++ b/src/nm-logging.c @@ -122,9 +122,9 @@ static struct { .level_desc = { [LOGL_TRACE] = { "TRACE", "", LOG_DEBUG, G_LOG_LEVEL_DEBUG, _LOG_FORMAT_FLAG_LEVEL_DEBUG }, [LOGL_DEBUG] = { "DEBUG", "", LOG_INFO, G_LOG_LEVEL_DEBUG, _LOG_FORMAT_FLAG_LEVEL_DEBUG }, - [LOGL_INFO] = { "INFO", "", LOG_INFO, G_LOG_LEVEL_MESSAGE, _LOG_FORMAT_FLAG_LEVEL_INFO }, - [LOGL_WARN] = { "WARN", "", LOG_WARNING, G_LOG_LEVEL_WARNING, _LOG_FORMAT_FLAG_LEVEL_INFO }, - [LOGL_ERR] = { "ERR", "", LOG_ERR, G_LOG_LEVEL_WARNING, _LOG_FORMAT_FLAG_LEVEL_ERROR }, + [LOGL_INFO] = { "INFO", "", LOG_INFO, G_LOG_LEVEL_INFO, _LOG_FORMAT_FLAG_LEVEL_INFO }, + [LOGL_WARN] = { "WARN", "", LOG_WARNING, G_LOG_LEVEL_MESSAGE, _LOG_FORMAT_FLAG_LEVEL_INFO }, + [LOGL_ERR] = { "ERR", "", LOG_ERR, G_LOG_LEVEL_MESSAGE, _LOG_FORMAT_FLAG_LEVEL_ERROR }, [_LOGL_OFF] = { "OFF", NULL, 0, 0, 0 }, [_LOGL_KEEP] = { "KEEP", NULL, 0, 0, 0 }, },