x86/checksum_32: Remove .fixup usage

Simply add EX_FLAG_CLEAR_AX to do as the .fixup used to do.

Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Reviewed-by: Josh Poimboeuf <jpoimboe@redhat.com>
Link: https://lore.kernel.org/r/20211110101325.899657959@infradead.org
This commit is contained in:
Peter Zijlstra 2021-11-10 11:01:19 +01:00
parent 3e8ea7803a
commit fedb24cda1
1 changed files with 3 additions and 16 deletions

View File

@ -260,9 +260,9 @@ unsigned int csum_partial_copy_generic (const char *src, char *dst,
* Copy from ds while checksumming, otherwise like csum_partial
*/
#define EXC(y...) \
9999: y; \
_ASM_EXTABLE_UA(9999b, 6001f)
#define EXC(y...) \
9999: y; \
_ASM_EXTABLE_TYPE(9999b, 7f, EX_TYPE_UACCESS | EX_FLAG_CLEAR_AX)
#ifndef CONFIG_X86_USE_PPRO_CHECKSUM
@ -358,15 +358,6 @@ EXC( movb %cl, (%edi) )
adcl $0, %eax
7:
# Exception handler:
.section .fixup, "ax"
6001:
xorl %eax, %eax
jmp 7b
.previous
popl %ebx
popl %esi
popl %edi
@ -439,10 +430,6 @@ EXC( movb %dl, (%edi) )
6: addl %edx, %eax
adcl $0, %eax
7:
.section .fixup, "ax"
6001: xorl %eax, %eax
jmp 7b
.previous
popl %esi
popl %edi