提交 1fd69098 编写于 作者: F Franck Bui-Huu 提交者: Ralf Baechle

[MIPS] unwind_stack(): return ra if an exception occured at the first instruction

Signed-off-by: NFranck Bui-Huu <vagabon.xyz@gmail.com>
Signed-off-by: NRalf Baechle <ralf@linux-mips.org>
上级 f83b854a
...@@ -465,8 +465,11 @@ unsigned long unwind_stack(struct task_struct *task, unsigned long *sp, ...@@ -465,8 +465,11 @@ unsigned long unwind_stack(struct task_struct *task, unsigned long *sp,
if (!kallsyms_lookup(pc, &size, &ofs, &modname, namebuf)) if (!kallsyms_lookup(pc, &size, &ofs, &modname, namebuf))
return 0; return 0;
if (ofs == 0) /*
return 0; * Return ra if an exception occured at the first instruction
*/
if (unlikely(ofs == 0))
return ra;
info.func = (void *)(pc - ofs); info.func = (void *)(pc - ofs);
info.func_size = ofs; /* analyze from start to ofs */ info.func_size = ofs; /* analyze from start to ofs */
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册