summaryrefslogtreecommitdiffstats
path: root/arch/parisc/include/asm/unwind.h
diff options
context:
space:
mode:
authorHelge Deller <deller@gmx.de>2018-08-05 00:03:29 +0200
committerHelge Deller <deller@gmx.de>2018-08-13 09:54:17 +0200
commitc8921d72e390cb6fca3fb2b0c2badfda851647eb (patch)
tree8c6aec1a9405da9caad70088a7dfd910b71b6675 /arch/parisc/include/asm/unwind.h
parent3b885ac1dc35b87a39ee176a6c7e2af9c789d8b8 (diff)
downloadlinux-c8921d72e390cb6fca3fb2b0c2badfda851647eb.tar.bz2
parisc: Fix and improve kernel stack unwinding
This patchset fixes and improves stack unwinding a lot: 1. Show backward stack traces with up to 30 callsites 2. Add callinfo to ENTRY_CFI() such that every assembler function will get an entry in the unwind table 3. Use constants instead of numbers in call_on_stack() 4. Do not depend on CONFIG_KALLSYMS to generate backtraces. 5. Speed up backtrace generation Make sure you have this patch to GNU as installed: https://sourceware.org/ml/binutils/2018-07/msg00474.html Without this patch, unwind info in the kernel is often wrong for various functions. Signed-off-by: Helge Deller <deller@gmx.de>
Diffstat (limited to 'arch/parisc/include/asm/unwind.h')
-rw-r--r--arch/parisc/include/asm/unwind.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/arch/parisc/include/asm/unwind.h b/arch/parisc/include/asm/unwind.h
index c73a3ee20226..f133b7efbebb 100644
--- a/arch/parisc/include/asm/unwind.h
+++ b/arch/parisc/include/asm/unwind.h
@@ -4,6 +4,9 @@
#include <linux/list.h>
+/* Max number of levels to backtrace */
+#define MAX_UNWIND_ENTRIES 30
+
/* From ABI specifications */
struct unwind_table_entry {
unsigned int region_start;