x86/alternative: Convert the asm ALTERNATIVE() macro

Signed-off-by: Borislav Petkov (AMD) <bp@alien8.de>
Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Link: https://lore.kernel.org/r/20240607111701.8366-12-bp@kernel.org
This commit is contained in:
Borislav Petkov (AMD)
2024-06-07 13:16:58 +02:00
parent 93694129c6
commit a6c7a6a18b

View File

@@ -422,24 +422,6 @@ void nop_func(void);
* @newinstr. ".skip" directive takes care of proper instruction padding
* in case @newinstr is longer than @oldinstr.
*/
.macro ALTERNATIVE oldinstr, newinstr, ft_flags
140:
\oldinstr
141:
.skip -(((144f-143f)-(141b-140b)) > 0) * ((144f-143f)-(141b-140b)),0x90
142:
.pushsection .altinstructions,"a"
altinstr_entry 140b,143f,\ft_flags,142b-140b,144f-143f
.popsection
.pushsection .altinstr_replacement,"ax"
143:
\newinstr
144:
.popsection
.endm
#define __N_ALTERNATIVE(oldinst, newinst, flag) \
740: \
oldinst ; \
@@ -455,12 +437,10 @@ void nop_func(void);
744: \
.popsection ;
.macro N_ALTERNATIVE oldinstr, newinstr, ft_flags
.macro ALTERNATIVE oldinstr, newinstr, ft_flags
__N_ALTERNATIVE(\oldinstr, \newinstr, \ft_flags)
.endm
#define old_len 141b-140b
#define new_len1 144f-143f
#define new_len2 145f-144f