diff options
Diffstat (limited to 'arch/x86/include/asm/stacktrace.h')
-rw-r--r-- | arch/x86/include/asm/stacktrace.h | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/arch/x86/include/asm/stacktrace.h b/arch/x86/include/asm/stacktrace.h index a957463d3c7a..2b16a2ad23dc 100644 --- a/arch/x86/include/asm/stacktrace.h +++ b/arch/x86/include/asm/stacktrace.h | |||
@@ -78,17 +78,14 @@ struct stack_frame_ia32 { | |||
78 | u32 return_address; | 78 | u32 return_address; |
79 | }; | 79 | }; |
80 | 80 | ||
81 | static inline unsigned long rewind_frame_pointer(int n) | 81 | static inline unsigned long caller_frame_pointer(void) |
82 | { | 82 | { |
83 | struct stack_frame *frame; | 83 | struct stack_frame *frame; |
84 | 84 | ||
85 | get_bp(frame); | 85 | get_bp(frame); |
86 | 86 | ||
87 | #ifdef CONFIG_FRAME_POINTER | 87 | #ifdef CONFIG_FRAME_POINTER |
88 | while (n--) { | 88 | frame = frame->next_frame; |
89 | if (probe_kernel_address(&frame->next_frame, frame)) | ||
90 | break; | ||
91 | } | ||
92 | #endif | 89 | #endif |
93 | 90 | ||
94 | return (unsigned long)frame; | 91 | return (unsigned long)frame; |