1
0
Files
kernel-49/tools/lib/lockdep/uinclude/linux/stacktrace.h
Andrey Zolotarev e72e9355e3 start the android-4.9 tree
git: https://android.googlesource.com/kernel/common
branch: android-4.9
commit: 03fcc2fe71308c2d164b4e6cbfc738c63e670444
2018-11-15 21:36:32 +03:00

33 lines
639 B
C

#ifndef _LIBLOCKDEP_LINUX_STACKTRACE_H_
#define _LIBLOCKDEP_LINUX_STACKTRACE_H_
#include <execinfo.h>
struct stack_trace {
unsigned int nr_entries, max_entries;
unsigned long *entries;
int skip;
};
static inline void print_stack_trace(struct stack_trace *trace, int spaces)
{
backtrace_symbols_fd((void **)trace->entries, trace->nr_entries, 1);
}
#define save_stack_trace(trace) \
((trace)->nr_entries = \
backtrace((void **)(trace)->entries, (trace)->max_entries))
static inline int dump_stack(void)
{
void *array[64];
size_t size;
size = backtrace(array, 64);
backtrace_symbols_fd(array, size, 1);
return 0;
}
#endif