diff options
| -rw-r--r-- | arch/sparc64/kernel/traps.c | 12 | ||||
| -rw-r--r-- | arch/sparc64/kernel/unaligned.c | 2 | ||||
| -rw-r--r-- | arch/sparc64/mm/extable.c | 4 | ||||
| -rw-r--r-- | arch/sparc64/mm/fault.c | 2 |
4 files changed, 10 insertions, 10 deletions
diff --git a/arch/sparc64/kernel/traps.c b/arch/sparc64/kernel/traps.c index 2d08fbdf37a6..23e5a862f088 100644 --- a/arch/sparc64/kernel/traps.c +++ b/arch/sparc64/kernel/traps.c @@ -149,17 +149,17 @@ void data_access_exception (struct pt_regs *regs, if (regs->tstate & TSTATE_PRIV) { /* Test if this comes from uaccess places. */ - const struct exception_table_entry *entry; + unsigned long fixup; unsigned long g2 = regs->u_regs[UREG_G2]; - if ((entry = search_extables_range(regs->tpc, &g2))) { + if ((fixup = search_extables_range(regs->tpc, &g2))) { /* Ouch, somebody is trying ugly VM hole tricks on us... */ #ifdef DEBUG_EXCEPTIONS printk("Exception: PC<%016lx> faddr<UNKNOWN>\n", regs->tpc); printk("EX_TABLE: insn<%016lx> fixup<%016lx> " - "g2<%016lx>\n", regs->tpc, entry->fixup, g2); + "g2<%016lx>\n", regs->tpc, fixup, g2); #endif - regs->tpc = entry->fixup; + regs->tpc = fixup; regs->tnpc = regs->tpc + 4; regs->u_regs[UREG_G2] = g2; return; @@ -1390,8 +1390,8 @@ void cheetah_deferred_handler(struct pt_regs *regs, unsigned long afsr, unsigned /* Only perform fixup if we still have a * recoverable condition. */ - if (entry && recoverable) { - regs->tpc = entry->fixup; + if (recoverable) { + regs->tpc = fixup; regs->tnpc = regs->tpc + 4; regs->u_regs[UREG_G2] = g2; } diff --git a/arch/sparc64/kernel/unaligned.c b/arch/sparc64/kernel/unaligned.c index 1be7c0125f1d..1d403a089e01 100644 --- a/arch/sparc64/kernel/unaligned.c +++ b/arch/sparc64/kernel/unaligned.c @@ -361,7 +361,7 @@ void kernel_mna_trap_fault(struct pt_regs *regs, unsigned int insn) __asm__ ("ke void kernel_mna_trap_fault(struct pt_regs *regs, unsigned int insn) { unsigned long g2 = regs->u_regs [UREG_G2]; - unsigned long fixup = search_exception_table (regs->tpc, &g2); + unsigned long fixup = search_extables_range(regs->tpc, &g2); if (!fixup) { unsigned long address = compute_effective_address(regs, insn, ((insn >> 25) & 0x1f)); diff --git a/arch/sparc64/mm/extable.c b/arch/sparc64/mm/extable.c index 6d15ac93cd94..54a17bc63324 100644 --- a/arch/sparc64/mm/extable.c +++ b/arch/sparc64/mm/extable.c @@ -31,7 +31,7 @@ search_extable(const struct exception_table_entry *start, */ /* 1. Try to find an exact match. */ - for (walk = start; walk <= end; walk++) { + for (walk = start; walk <= last; walk++) { if (walk->fixup == 0) { /* A range entry, skip both parts. */ walk++; @@ -43,7 +43,7 @@ search_extable(const struct exception_table_entry *start, } /* 2. Try to find a range match. */ - for (walk = start; walk <= (end - 1); walk++) { + for (walk = start; walk <= (last - 1); walk++) { if (walk->fixup) continue; diff --git a/arch/sparc64/mm/fault.c b/arch/sparc64/mm/fault.c index 064b00856381..5c4a56023668 100644 --- a/arch/sparc64/mm/fault.c +++ b/arch/sparc64/mm/fault.c @@ -286,7 +286,7 @@ static void do_kernel_fault(struct pt_regs *regs, int si_code, int fault_code, /* Look in asi.h: All _S asis have LS bit set */ if ((asi & 0x1) && - (fizup = search_extables_range(regs->tpc, &g2))) { + (fixup = search_extables_range(regs->tpc, &g2))) { regs->tpc = fixup; regs->tnpc = regs->tpc + 4; regs->u_regs[UREG_G2] = g2; |
