mirror of https://github.com/wolfSSL/wolfssl.git
linuxkm: add support for WOLFSSL_DEBUG_BACKTRACE_ERROR_CODES using dump_stack().
parent
0da78a7ee2
commit
05c4955316
|
@ -632,6 +632,10 @@
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifdef WOLFSSL_DEBUG_BACKTRACE_ERROR_CODES
|
||||||
|
typeof(dump_stack) *dump_stack;
|
||||||
|
#endif
|
||||||
|
|
||||||
const void *_last_slot;
|
const void *_last_slot;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -777,6 +781,10 @@
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifdef WOLFSSL_DEBUG_BACKTRACE_ERROR_CODES
|
||||||
|
#define dump_stack (wolfssl_linuxkm_get_pie_redirect_table()->dump_stack)
|
||||||
|
#endif
|
||||||
|
|
||||||
#endif /* __PIE__ */
|
#endif /* __PIE__ */
|
||||||
|
|
||||||
#endif /* USE_WOLFSSL_LINUXKM_PIE_REDIRECT_TABLE */
|
#endif /* USE_WOLFSSL_LINUXKM_PIE_REDIRECT_TABLE */
|
||||||
|
|
|
@ -580,6 +580,10 @@ static int set_up_wolfssl_linuxkm_pie_redirect_table(void) {
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifdef WOLFSSL_DEBUG_BACKTRACE_ERROR_CODES
|
||||||
|
wolfssl_linuxkm_pie_redirect_table.dump_stack = dump_stack;
|
||||||
|
#endif
|
||||||
|
|
||||||
/* runtime assert that the table has no null slots after initialization. */
|
/* runtime assert that the table has no null slots after initialization. */
|
||||||
{
|
{
|
||||||
unsigned long *i;
|
unsigned long *i;
|
||||||
|
|
|
@ -1721,6 +1721,14 @@ void WOLFSSL_ERROR_MSG(const char* msg)
|
||||||
|
|
||||||
#ifdef WOLFSSL_DEBUG_BACKTRACE_ERROR_CODES
|
#ifdef WOLFSSL_DEBUG_BACKTRACE_ERROR_CODES
|
||||||
|
|
||||||
|
#ifdef WOLFSSL_LINUXKM
|
||||||
|
|
||||||
|
void wc_backtrace_render(void) {
|
||||||
|
dump_stack();
|
||||||
|
}
|
||||||
|
|
||||||
|
#else /* !WOLFSSL_LINUXKM */
|
||||||
|
|
||||||
#include <backtrace-supported.h>
|
#include <backtrace-supported.h>
|
||||||
|
|
||||||
#if BACKTRACE_SUPPORTED != 1
|
#if BACKTRACE_SUPPORTED != 1
|
||||||
|
@ -1848,5 +1856,6 @@ void wc_backtrace_render(void) {
|
||||||
|
|
||||||
wc_UnLockMutex(&backtrace_mutex);
|
wc_UnLockMutex(&backtrace_mutex);
|
||||||
}
|
}
|
||||||
|
#endif /* !WOLFSSL_LINUXKM */
|
||||||
|
|
||||||
#endif /* WOLFSSL_DEBUG_BACKTRACE_ERROR_CODES */
|
#endif /* WOLFSSL_DEBUG_BACKTRACE_ERROR_CODES */
|
||||||
|
|
Loading…
Reference in New Issue