From 3e530d8ea8336839f50f3265c8815c569527f99f Mon Sep 17 00:00:00 2001 From: Antonio Nino Diaz Date: Thu, 23 Aug 2018 15:13:58 +0100 Subject: 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 --- lib/libc/assert.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'lib/libc/assert.c') diff --git a/lib/libc/assert.c b/lib/libc/assert.c index fa12cb6b0..8fa8f7212 100644 --- a/lib/libc/assert.c +++ b/lib/libc/assert.c @@ -20,19 +20,23 @@ void __assert(const char *file, unsigned int line, const char *assertion) { printf("ASSERT: %s:%d:%s\n", file, line, assertion); - console_flush(); + backtrace("assert"); + (void)console_flush(); plat_panic_handler(); } #elif PLAT_LOG_LEVEL_ASSERT >= LOG_LEVEL_INFO void __assert(const char *file, unsigned int line) { printf("ASSERT: %s:%d\n", file, line); - console_flush(); + backtrace("assert"); + (void)console_flush(); plat_panic_handler(); } #else void __assert(void) { + backtrace("assert"); + (void)console_flush(); plat_panic_handler(); } #endif -- cgit v1.2.3