Commit d7abc0fa authored by H. Peter Anvin's avatar H. Peter Anvin

x86, extable: Remove open-coded exception table entries in arch/x86/kernel/entry_64.S

Remove open-coded exception table entries in arch/x86/kernel/entry_64.S,
and replace them with _ASM_EXTABLE() macros; this will allow us to
change the format and type of the exception table entries.
Signed-off-by: default avatarH. Peter Anvin <hpa@zytor.com>
Cc: David Daney <david.daney@cavium.com>
Link: http://lkml.kernel.org/r/CA%2B55aFyijf43qSu3N9nWHEBwaGbb7T2Oq9A=9EyR=Jtyqfq_cQ@mail.gmail.com
parent 6837a54d
...@@ -55,6 +55,7 @@ ...@@ -55,6 +55,7 @@
#include <asm/paravirt.h> #include <asm/paravirt.h>
#include <asm/ftrace.h> #include <asm/ftrace.h>
#include <asm/percpu.h> #include <asm/percpu.h>
#include <asm/asm.h>
#include <linux/err.h> #include <linux/err.h>
/* Avoid __ASSEMBLER__'ifying <linux/audit.h> just for this. */ /* Avoid __ASSEMBLER__'ifying <linux/audit.h> just for this. */
...@@ -900,18 +901,12 @@ restore_args: ...@@ -900,18 +901,12 @@ restore_args:
irq_return: irq_return:
INTERRUPT_RETURN INTERRUPT_RETURN
_ASM_EXTABLE(irq_return, bad_iret)
.section __ex_table, "a"
.quad irq_return, bad_iret
.previous
#ifdef CONFIG_PARAVIRT #ifdef CONFIG_PARAVIRT
ENTRY(native_iret) ENTRY(native_iret)
iretq iretq
_ASM_EXTABLE(native_iret, bad_iret)
.section __ex_table,"a"
.quad native_iret, bad_iret
.previous
#endif #endif
.section .fixup,"ax" .section .fixup,"ax"
...@@ -1181,10 +1176,7 @@ gs_change: ...@@ -1181,10 +1176,7 @@ gs_change:
CFI_ENDPROC CFI_ENDPROC
END(native_load_gs_index) END(native_load_gs_index)
.section __ex_table,"a" _ASM_EXTABLE(gs_change,bad_gs)
.align 8
.quad gs_change,bad_gs
.previous
.section .fixup,"ax" .section .fixup,"ax"
/* running with kernelgs */ /* running with kernelgs */
bad_gs: bad_gs:
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment