aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/kernel/dumpstack.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/x86/kernel/dumpstack.c')
-rw-r--r--arch/x86/kernel/dumpstack.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/arch/x86/kernel/dumpstack.c b/arch/x86/kernel/dumpstack.c
index 32e5699eadfe..8efa57a5f29e 100644
--- a/arch/x86/kernel/dumpstack.c
+++ b/arch/x86/kernel/dumpstack.c
@@ -135,7 +135,8 @@ print_context_stack_bp(struct thread_info *tinfo,
135 if (!__kernel_text_address(addr)) 135 if (!__kernel_text_address(addr))
136 break; 136 break;
137 137
138 ops->address(data, addr, 1); 138 if (ops->address(data, addr, 1))
139 break;
139 frame = frame->next_frame; 140 frame = frame->next_frame;
140 ret_addr = &frame->return_address; 141 ret_addr = &frame->return_address;
141 print_ftrace_graph_addr(addr, data, ops, tinfo, graph); 142 print_ftrace_graph_addr(addr, data, ops, tinfo, graph);
@@ -154,10 +155,11 @@ static int print_trace_stack(void *data, char *name)
154/* 155/*
155 * Print one address/symbol entries per line. 156 * Print one address/symbol entries per line.
156 */ 157 */
157static void print_trace_address(void *data, unsigned long addr, int reliable) 158static int print_trace_address(void *data, unsigned long addr, int reliable)
158{ 159{
159 touch_nmi_watchdog(); 160 touch_nmi_watchdog();
160 printk_stack_address(addr, reliable, data); 161 printk_stack_address(addr, reliable, data);
162 return 0;
161} 163}
162 164
163static const struct stacktrace_ops print_trace_ops = { 165static const struct stacktrace_ops print_trace_ops = {