Signed-off-by: Thomas Wood <thomas.wood@xxxxxxxxx> --- lib/igt_core.c | 19 ++++++++----------- lib/igt_core.h | 21 +++++++++++---------- 2 files changed, 19 insertions(+), 21 deletions(-) diff --git a/lib/igt_core.c b/lib/igt_core.c index 6159a8c..b98cb41 100644 --- a/lib/igt_core.c +++ b/lib/igt_core.c @@ -951,27 +951,24 @@ static bool run_under_gdb(void) strncmp(basename(buf), "gdb", 3) == 0); } -void __igt_fail_assert(int exitcode, const char *file, +void __igt_fail_assert(int exitcode, const char *domain, const char *file, const int line, const char *func, const char *assertion, const char *f, ...) { va_list args; int err = errno; - char *err_str = NULL; + igt_log(domain, IGT_LOG_CRITICAL, + "Test assertion failure function %s, file %s:%i:\n", func, file, + line); + igt_log(domain, IGT_LOG_CRITICAL, "Failed assertion: %s\n", assertion); if (err) - asprintf(&err_str, "Last errno: %i, %s\n", err, strerror(err)); - - printf("Test assertion failure function %s, file %s:%i:\n" - "Failed assertion: %s\n" - "%s", - func, file, line, assertion, err_str ?: ""); - - free(err_str); + igt_log(domain, IGT_LOG_CRITICAL, "Last errno: %i, %s\n", err, + strerror(err)); if (f) { va_start(args, f); - vprintf(f, args); + igt_vlog(domain, IGT_LOG_CRITICAL, f, args); va_end(args); } diff --git a/lib/igt_core.h b/lib/igt_core.h index f184d75..bc4ba0a 100644 --- a/lib/igt_core.h +++ b/lib/igt_core.h @@ -38,6 +38,11 @@ #include <stdarg.h> #include <getopt.h> +#ifndef IGT_LOG_DOMAIN +#define IGT_LOG_DOMAIN (NULL) +#endif + + extern const char* __igt_test_description __attribute__((weak)); /** @@ -215,8 +220,8 @@ void __igt_skip_check(const char *file, const int line, void igt_success(void); void igt_fail(int exitcode) __attribute__((noreturn)); -__attribute__((format(printf, 6, 7))) -void __igt_fail_assert(int exitcode, const char *file, +__attribute__((format(printf, 7, 8))) +void __igt_fail_assert(int exitcode, const char *domain, const char *file, const int line, const char *func, const char *assertion, const char *format, ...) __attribute__((noreturn)); @@ -232,7 +237,7 @@ void igt_exit(void) __attribute__((noreturn)); */ #define igt_assert(expr) \ do { if (!(expr)) \ - __igt_fail_assert(99, __FILE__, __LINE__, __func__, #expr , NULL); \ + __igt_fail_assert(99, IGT_LOG_DOMAIN, __FILE__, __LINE__, __func__, #expr , NULL); \ } while (0) /** @@ -249,7 +254,7 @@ void igt_exit(void) __attribute__((noreturn)); */ #define igt_assert_f(expr, f...) \ do { if (!(expr)) \ - __igt_fail_assert(99, __FILE__, __LINE__, __func__, #expr , f); \ + __igt_fail_assert(99, IGT_LOG_DOMAIN, __FILE__, __LINE__, __func__, #expr , f); \ } while (0) /** @@ -294,7 +299,7 @@ void igt_exit(void) __attribute__((noreturn)); do { \ int __n1 = (n1), __n2 = (n2); \ if (__n1 cmp __n2) ; else \ - __igt_fail_assert(99, __FILE__, __LINE__, __func__, \ + __igt_fail_assert(99, IGT_LOG_DOMAIN, __FILE__, __LINE__, __func__, \ #n1 " " #cmp " " #n2, \ "error: %d " #ncmp " %d\n", __n1, __n2); \ } while (0) @@ -303,7 +308,7 @@ void igt_exit(void) __attribute__((noreturn)); do { \ uint32_t __n1 = (n1), __n2 = (n2); \ if (__n1 cmp __n2) ; else \ - __igt_fail_assert(99, __FILE__, __LINE__, __func__, \ + __igt_fail_assert(99, IGT_LOG_DOMAIN, __FILE__, __LINE__, __func__, \ #n1 " " #cmp " " #n2, \ "error: %#x " #ncmp " %#x\n", __n1, __n2); \ } while (0) @@ -512,10 +517,6 @@ bool igt_run_in_simulation(void); void igt_skip_on_simulation(void); /* structured logging */ -#ifndef IGT_LOG_DOMAIN -#define IGT_LOG_DOMAIN (NULL) -#endif - enum igt_log_level { IGT_LOG_DEBUG, IGT_LOG_INFO, -- 2.1.0 _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/intel-gfx