diff options
Diffstat (limited to 'arch/x86/include/asm/alternative-asm.h')
| -rw-r--r-- | arch/x86/include/asm/alternative-asm.h | 21 |
1 files changed, 17 insertions, 4 deletions
diff --git a/arch/x86/include/asm/alternative-asm.h b/arch/x86/include/asm/alternative-asm.h index a63a68be1cc..372231c22a4 100644 --- a/arch/x86/include/asm/alternative-asm.h +++ b/arch/x86/include/asm/alternative-asm.h @@ -1,18 +1,31 @@ +#ifndef _ASM_X86_ALTERNATIVE_ASM_H +#define _ASM_X86_ALTERNATIVE_ASM_H + #ifdef __ASSEMBLY__ #include <asm/asm.h> #ifdef CONFIG_SMP .macro LOCK_PREFIX -1: lock - .section .smp_locks,"a" +672: lock + .pushsection .smp_locks,"a" .balign 4 - .long 1b - . - .previous + .long 672b - . + .popsection .endm #else .macro LOCK_PREFIX .endm #endif +.macro altinstruction_entry orig alt feature orig_len alt_len + .long \orig - . + .long \alt - . + .word \feature + .byte \orig_len + .byte \alt_len +.endm + #endif /* __ASSEMBLY__ */ + +#endif /* _ASM_X86_ALTERNATIVE_ASM_H */ |
