CRIS: Fixup lookup for delay slot faults
Signed-off-by: Jesper Nilsson <jesper.nilsson@axis.com>
This commit is contained in:
parent
7c8a25b544
commit
a90993c693
@ -334,8 +334,11 @@ int
|
|||||||
find_fixup_code(struct pt_regs *regs)
|
find_fixup_code(struct pt_regs *regs)
|
||||||
{
|
{
|
||||||
const struct exception_table_entry *fixup;
|
const struct exception_table_entry *fixup;
|
||||||
|
/* in case of delay slot fault (v32) */
|
||||||
|
unsigned long ip = (instruction_pointer(regs) & ~0x1);
|
||||||
|
|
||||||
if ((fixup = search_exception_tables(instruction_pointer(regs))) != 0) {
|
fixup = search_exception_tables(ip);
|
||||||
|
if (fixup != 0) {
|
||||||
/* Adjust the instruction pointer in the stackframe. */
|
/* Adjust the instruction pointer in the stackframe. */
|
||||||
instruction_pointer(regs) = fixup->fixup;
|
instruction_pointer(regs) = fixup->fixup;
|
||||||
arch_fixup(regs);
|
arch_fixup(regs);
|
||||||
|
Loading…
Reference in New Issue
Block a user