1
0
mirror of git://sourceware.org/git/lvm2.git synced 2024-12-21 13:34:40 +03:00

dmeventd: abort on internal error

Provide same support for DM_ABORT_ON_INTERNAL_ERRORS we do have
with default libdm logging  as  dmeventd is libdm based tool.
This commit is contained in:
Zdenek Kabelac 2016-11-02 14:40:12 +01:00
parent e50d434a35
commit 33dd1f7747
2 changed files with 11 additions and 0 deletions

View File

@ -1,5 +1,6 @@
Version 1.02.136 - Version 1.02.136 -
====================================== ======================================
Dmeventd now also respects DM_ABORT_ON_INTERNAL_ERRORS as libdm based tool.
Report as non default dm logging also when logging with errno was changed. Report as non default dm logging also when logging with errno was changed.
Use log_level() macro to consistently decode message log level in dmeventd. Use log_level() macro to consistently decode message log level in dmeventd.
Still produce output when dmsetup dependency tree building finds dev missing. Still produce output when dmsetup dependency tree building finds dev missing.

View File

@ -865,6 +865,7 @@ void dm_event_log(const char *subsys, int level, const char *file,
int line, int dm_errno_or_class, int line, int dm_errno_or_class,
const char *format, va_list ap) const char *format, va_list ap)
{ {
static int _abort_on_internal_errors = -1;
static pthread_mutex_t _log_mutex = PTHREAD_MUTEX_INITIALIZER; static pthread_mutex_t _log_mutex = PTHREAD_MUTEX_INITIALIZER;
static time_t start = 0; static time_t start = 0;
const char *indent = ""; const char *indent = "";
@ -926,6 +927,15 @@ void dm_event_log(const char *subsys, int level, const char *file,
} }
pthread_mutex_unlock(&_log_mutex); pthread_mutex_unlock(&_log_mutex);
if (_abort_on_internal_errors < 0)
/* Set when env DM_ABORT_ON_INTERNAL_ERRORS is not "0" */
_abort_on_internal_errors =
strcmp(getenv("DM_ABORT_ON_INTERNAL_ERRORS") ? : "0", "0");
if (_abort_on_internal_errors &&
!strncmp(format, INTERNAL_ERROR, sizeof(INTERNAL_ERROR) - 1))
abort();
} }
#if 0 /* left out for now */ #if 0 /* left out for now */