diff options
author | Antonio Nino Diaz <antonio.ninodiaz@arm.com> | 2018-08-23 15:13:58 +0100 |
---|---|---|
committer | Antonio Nino Diaz <antonio.ninodiaz@arm.com> | 2018-08-30 09:21:53 +0100 |
commit | 3e530d8ea8336839f50f3265c8815c569527f99f (patch) | |
tree | 9d84439bef8e77665bcf18c079fb7955b91e2b2d /include/common | |
parent | 0c62883f7eed80f02c3585d7d0e408def0569f7c (diff) |
backtrace: Print backtrace in assert() and panic()
When any of these functions is called the backtrace will be printed to
the console.
Change-Id: Id60842df824b320c485a9323ed6b80600f4ebe35
Signed-off-by: Antonio Nino Diaz <antonio.ninodiaz@arm.com>
Diffstat (limited to 'include/common')
-rw-r--r-- | include/common/debug.h | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/include/common/debug.h b/include/common/debug.h index ee25af12..ab3e15a7 100644 --- a/include/common/debug.h +++ b/include/common/debug.h @@ -27,7 +27,9 @@ #ifndef __ASSEMBLY__ #include <cdefs.h> +#include <console.h> #include <stdarg.h> +#include <stdbool.h> #include <stdio.h> /* @@ -90,7 +92,13 @@ void backtrace(const char *cookie); #endif void __dead2 do_panic(void); -#define panic() do_panic() + +#define panic() \ + do { \ + backtrace(__func__); \ + (void)console_flush(); \ + do_panic(); \ + } while (false) /* Function called when stack protection check code detects a corrupted stack */ void __dead2 __stack_chk_fail(void); |