summaryrefslogtreecommitdiff
path: root/arch/m68k/apollo
diff options
context:
space:
mode:
authorCatalin Marinas <catalin.marinas@arm.com>2009-09-02 17:17:13 +0100
committerCatalin Marinas <catalin.marinas@arm.com>2009-09-02 17:17:13 +0100
commit47896406c5173f6f03eab9736e1b47220302008b (patch)
tree5bd5e3db63b6d819dce6febd3589cde2c1d0d0a6 /arch/m68k/apollo
parentb69c3f804308b0c50f2ca18a0e0170a1ec2e6685 (diff)
Add extra checks to ARM unwinder to avoid tracing corrupt stacks
There are situations where the unwinder goes beyond stack boundaries and unwinds random data. This patch moves the stack boundaries check after the unwind_exec_insn() call and adds an extra check for possible infinite loops (like "mov pc, lr" with pc == lr). The patch also fixes a bug in the unwind instructions interpreter. The 0xb0 instruction can only set PC to LR if this wasn't already set by a previous instruction (this is used on exceptions taken while in kernel mode where svc_entry is annotated with ".save {r0 - pc}"). The patch also corrects the FP register number for Thumb-2. Signed-off-by: Catalin Marinas <catalin.marinas@arm.com> Tested-by: Tony Lindgren <tony@atomide.com>
Diffstat (limited to 'arch/m68k/apollo')
0 files changed, 0 insertions, 0 deletions