From 2bacd07eb3be30fd30ed4fa4645901683b1c6b09 Mon Sep 17 00:00:00 2001 From: Thomas Wood Date: Thu, 10 Sep 2015 11:40:43 +0100 Subject: [PATCH] lib: don't use igt_warn in signal handlers igt_wan and other log functions are not async-signal safe, so should not be used in signal handlers. Reported-by: Paulo Zanoni Signed-off-by: Thomas Wood --- lib/igt_aux.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/lib/igt_aux.c b/lib/igt_aux.c index e77392cd..04ca25b0 100644 --- a/lib/igt_aux.c +++ b/lib/igt_aux.c @@ -47,6 +47,7 @@ #include #include #include +#include #include "drmtest.h" #include "i915_drm.h" @@ -769,9 +770,13 @@ static void igt_module_param_exit_handler(int sig) if (fd >= 0) { int size = strlen (data->original_value); - if (size != write(fd, data->original_value, size)) - igt_warn("%s may not have been reset to its" - " original value\n", file_path); + if (size != write(fd, data->original_value, size)) { + const char msg[] = "WARNING: Module parameters " + "may not have been reset to their " + "original values\n"; + assert(write(STDERR_FILENO, msg, sizeof(msg)) + == sizeof(msg)); + } close(fd); }