diff options
author | Jan Beulich <jbeulich@novell.com> | 2006-08-30 19:37:11 +0200 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-08-30 16:05:15 -0700 |
commit | ea424055b771a165c9abd3ae109255a3b825c745 (patch) | |
tree | 228f3bf4f392a8ce45d78a1ea8cfd8bd6f1f4f5b /include | |
parent | 61171b8dbd36b0cc34d3813a59a8e4dc2984414d (diff) | |
download | linux-3.10-ea424055b771a165c9abd3ae109255a3b825c745.tar.gz linux-3.10-ea424055b771a165c9abd3ae109255a3b825c745.tar.bz2 linux-3.10-ea424055b771a165c9abd3ae109255a3b825c745.zip |
[PATCH] x86: Make backtracer fallback logic more bullet-proof
The unwinder fallback logic still had potential for falling through to
the legacy stack trace code without printing an indication (at once
serving as a separator) of this.
Further, the stack pointer retrieval for the fallback should be as
restrictive as possible (in order to avoid having the legacy stack
tracer try to access invalid memory). The patch tightens that, but
this could certainly be further improved.
Also making the call_trace command line option now conditional upon
CONFIG_STACK_UNWIND (as it's meaningless otherwise).
Signed-off-by: Jan Beulich <jbeulich@novell.com>
Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'include')
-rw-r--r-- | include/asm-i386/unwind.h | 1 | ||||
-rw-r--r-- | include/asm-x86_64/unwind.h | 1 |
2 files changed, 2 insertions, 0 deletions
diff --git a/include/asm-i386/unwind.h b/include/asm-i386/unwind.h index 69f0f1df672..4c1a0b96856 100644 --- a/include/asm-i386/unwind.h +++ b/include/asm-i386/unwind.h @@ -87,6 +87,7 @@ static inline int arch_unw_user_mode(const struct unwind_frame_info *info) #else #define UNW_PC(frame) ((void)(frame), 0) +#define UNW_SP(frame) ((void)(frame), 0) static inline int arch_unw_user_mode(const void *info) { diff --git a/include/asm-x86_64/unwind.h b/include/asm-x86_64/unwind.h index f3e7124effe..1f6e9bfb569 100644 --- a/include/asm-x86_64/unwind.h +++ b/include/asm-x86_64/unwind.h @@ -95,6 +95,7 @@ static inline int arch_unw_user_mode(const struct unwind_frame_info *info) #else #define UNW_PC(frame) ((void)(frame), 0) +#define UNW_SP(frame) ((void)(frame), 0) static inline int arch_unw_user_mode(const void *info) { |