|
@@ -16,6 +16,7 @@
|
|
|
#include <asm/thread_info.h>
|
|
|
#include <asm/cpufeature.h>
|
|
|
#include <asm/alternative-asm.h>
|
|
|
+#include <asm/asm.h>
|
|
|
|
|
|
/*
|
|
|
* By placing feature2 after feature1 in altinstructions section, we logically
|
|
@@ -63,11 +64,8 @@
|
|
|
jmp copy_user_handle_tail
|
|
|
.previous
|
|
|
|
|
|
- .section __ex_table,"a"
|
|
|
- .align 8
|
|
|
- .quad 100b,103b
|
|
|
- .quad 101b,103b
|
|
|
- .previous
|
|
|
+ _ASM_EXTABLE(100b,103b)
|
|
|
+ _ASM_EXTABLE(101b,103b)
|
|
|
#endif
|
|
|
.endm
|
|
|
|
|
@@ -191,29 +189,26 @@ ENTRY(copy_user_generic_unrolled)
|
|
|
60: jmp copy_user_handle_tail /* ecx is zerorest also */
|
|
|
.previous
|
|
|
|
|
|
- .section __ex_table,"a"
|
|
|
- .align 8
|
|
|
- .quad 1b,30b
|
|
|
- .quad 2b,30b
|
|
|
- .quad 3b,30b
|
|
|
- .quad 4b,30b
|
|
|
- .quad 5b,30b
|
|
|
- .quad 6b,30b
|
|
|
- .quad 7b,30b
|
|
|
- .quad 8b,30b
|
|
|
- .quad 9b,30b
|
|
|
- .quad 10b,30b
|
|
|
- .quad 11b,30b
|
|
|
- .quad 12b,30b
|
|
|
- .quad 13b,30b
|
|
|
- .quad 14b,30b
|
|
|
- .quad 15b,30b
|
|
|
- .quad 16b,30b
|
|
|
- .quad 18b,40b
|
|
|
- .quad 19b,40b
|
|
|
- .quad 21b,50b
|
|
|
- .quad 22b,50b
|
|
|
- .previous
|
|
|
+ _ASM_EXTABLE(1b,30b)
|
|
|
+ _ASM_EXTABLE(2b,30b)
|
|
|
+ _ASM_EXTABLE(3b,30b)
|
|
|
+ _ASM_EXTABLE(4b,30b)
|
|
|
+ _ASM_EXTABLE(5b,30b)
|
|
|
+ _ASM_EXTABLE(6b,30b)
|
|
|
+ _ASM_EXTABLE(7b,30b)
|
|
|
+ _ASM_EXTABLE(8b,30b)
|
|
|
+ _ASM_EXTABLE(9b,30b)
|
|
|
+ _ASM_EXTABLE(10b,30b)
|
|
|
+ _ASM_EXTABLE(11b,30b)
|
|
|
+ _ASM_EXTABLE(12b,30b)
|
|
|
+ _ASM_EXTABLE(13b,30b)
|
|
|
+ _ASM_EXTABLE(14b,30b)
|
|
|
+ _ASM_EXTABLE(15b,30b)
|
|
|
+ _ASM_EXTABLE(16b,30b)
|
|
|
+ _ASM_EXTABLE(18b,40b)
|
|
|
+ _ASM_EXTABLE(19b,40b)
|
|
|
+ _ASM_EXTABLE(21b,50b)
|
|
|
+ _ASM_EXTABLE(22b,50b)
|
|
|
CFI_ENDPROC
|
|
|
ENDPROC(copy_user_generic_unrolled)
|
|
|
|
|
@@ -259,11 +254,8 @@ ENTRY(copy_user_generic_string)
|
|
|
jmp copy_user_handle_tail
|
|
|
.previous
|
|
|
|
|
|
- .section __ex_table,"a"
|
|
|
- .align 8
|
|
|
- .quad 1b,11b
|
|
|
- .quad 3b,12b
|
|
|
- .previous
|
|
|
+ _ASM_EXTABLE(1b,11b)
|
|
|
+ _ASM_EXTABLE(3b,12b)
|
|
|
CFI_ENDPROC
|
|
|
ENDPROC(copy_user_generic_string)
|
|
|
|
|
@@ -294,9 +286,6 @@ ENTRY(copy_user_enhanced_fast_string)
|
|
|
jmp copy_user_handle_tail
|
|
|
.previous
|
|
|
|
|
|
- .section __ex_table,"a"
|
|
|
- .align 8
|
|
|
- .quad 1b,12b
|
|
|
- .previous
|
|
|
+ _ASM_EXTABLE(1b,12b)
|
|
|
CFI_ENDPROC
|
|
|
ENDPROC(copy_user_enhanced_fast_string)
|