summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorH. Peter Anvin <hpa@zytor.com>2008-02-04 16:47:58 +0100
committerIngo Molnar <mingo@elte.hu>2008-02-04 16:47:58 +0100
commit88976ee187dce4c8de56e25955631de9765d96d1 (patch)
tree3e54c1139d400e363e77f7d25852444d7b18e41c
parent7d24a827087e0cf6834a3d8f20c4b5fc4cebd7fc (diff)
downloadop-kernel-dev-88976ee187dce4c8de56e25955631de9765d96d1.zip
op-kernel-dev-88976ee187dce4c8de56e25955631de9765d96d1.tar.gz
x86: use _ASM_EXTABLE macro in include/asm-x86/system.h
Use the _ASM_EXTABLE macro from <asm/asm.h>, instead of open-coding __ex_table entires in include/asm-x86/system.h. Signed-off-by: H. Peter Anvin <hpa@zytor.com> Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
-rw-r--r--include/asm-x86/system.h15
1 files changed, 5 insertions, 10 deletions
diff --git a/include/asm-x86/system.h b/include/asm-x86/system.h
index ee32ef9..428348e 100644
--- a/include/asm-x86/system.h
+++ b/include/asm-x86/system.h
@@ -130,10 +130,7 @@ extern void load_gs_index(unsigned);
"movl %k1, %%" #seg "\n\t" \
"jmp 2b\n" \
".previous\n" \
- ".section __ex_table,\"a\"\n\t" \
- _ASM_ALIGN "\n\t" \
- _ASM_PTR " 1b,3b\n" \
- ".previous" \
+ _ASM_EXTABLE(1b,3b) \
: :"r" (value), "r" (0))
@@ -214,12 +211,10 @@ static inline unsigned long native_read_cr4_safe(void)
/* This could fault if %cr4 does not exist. In x86_64, a cr4 always
* exists, so it will never fail. */
#ifdef CONFIG_X86_32
- asm volatile("1: mov %%cr4, %0 \n"
- "2: \n"
- ".section __ex_table,\"a\" \n"
- ".long 1b,2b \n"
- ".previous \n"
- : "=r" (val), "=m" (__force_order) : "0" (0));
+ asm volatile("1: mov %%cr4, %0\n"
+ "2:\n"
+ _ASM_EXTABLE(1b,2b)
+ : "=r" (val), "=m" (__force_order) : "0" (0));
#else
val = native_read_cr4();
#endif
OpenPOWER on IntegriCloud