diff options
author | Nicholas Piggin <npiggin@gmail.com> | 2016-10-14 07:47:31 +0200 |
---|---|---|
committer | Michael Ellerman <mpe@ellerman.id.au> | 2016-11-14 01:11:51 +0100 |
commit | 61a92f703120daf7ed25e046275aa8a2d3085ad4 (patch) | |
tree | 0ded0103f9cc2e2a6fc53e0fcc5bb6c4c2329265 /arch/powerpc/kernel/traps.c | |
parent | powerpc: EX_TABLE macro for exception tables (diff) | |
download | linux-61a92f703120daf7ed25e046275aa8a2d3085ad4.tar.xz linux-61a92f703120daf7ed25e046275aa8a2d3085ad4.zip |
powerpc: Add support for relative exception tables
This halves the exception table size on 64-bit builds, and it allows
build-time sorting of exception tables to work on relocated kernels.
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
[mpe: Minor asm fixups and bits to keep the selftests working]
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Diffstat (limited to 'arch/powerpc/kernel/traps.c')
-rw-r--r-- | arch/powerpc/kernel/traps.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/powerpc/kernel/traps.c b/arch/powerpc/kernel/traps.c index 023a462725b5..32c468b8b548 100644 --- a/arch/powerpc/kernel/traps.c +++ b/arch/powerpc/kernel/traps.c @@ -365,7 +365,7 @@ static inline int check_io_access(struct pt_regs *regs) (*nip & 0x100)? "OUT to": "IN from", regs->gpr[rb] - _IO_BASE, nip); regs->msr |= MSR_RI; - regs->nip = entry->fixup; + regs->nip = extable_fixup(entry); return 1; } } |