diff options
Diffstat (limited to 'arch/arm/kernel/unwind.c')
-rw-r--r-- | arch/arm/kernel/unwind.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/arch/arm/kernel/unwind.c b/arch/arm/kernel/unwind.c index dd81a918c106..d2cb0b3c9872 100644 --- a/arch/arm/kernel/unwind.c +++ b/arch/arm/kernel/unwind.c | |||
@@ -146,6 +146,8 @@ static struct unwind_idx *unwind_find_idx(unsigned long addr) | |||
146 | addr < table->end_addr) { | 146 | addr < table->end_addr) { |
147 | idx = search_index(addr, table->start, | 147 | idx = search_index(addr, table->start, |
148 | table->stop - 1); | 148 | table->stop - 1); |
149 | /* Move-to-front to exploit common traces */ | ||
150 | list_move(&table->list, &unwind_tables); | ||
149 | break; | 151 | break; |
150 | } | 152 | } |
151 | } | 153 | } |
@@ -277,7 +279,7 @@ int unwind_frame(struct stackframe *frame) | |||
277 | 279 | ||
278 | /* only go to a higher address on the stack */ | 280 | /* only go to a higher address on the stack */ |
279 | low = frame->sp; | 281 | low = frame->sp; |
280 | high = ALIGN(low, THREAD_SIZE) + THREAD_SIZE; | 282 | high = ALIGN(low, THREAD_SIZE); |
281 | 283 | ||
282 | pr_debug("%s(pc = %08lx lr = %08lx sp = %08lx)\n", __func__, | 284 | pr_debug("%s(pc = %08lx lr = %08lx sp = %08lx)\n", __func__, |
283 | frame->pc, frame->lr, frame->sp); | 285 | frame->pc, frame->lr, frame->sp); |