[PATCH v1 11/14] x86/alternative: Convert the asm ALTERNATIVE() macro

From: Borislav Petkov
Date: Fri Jun 07 2024 - 07:19:57 EST


From: "Borislav Petkov (AMD)" <bp@xxxxxxxxx>

Signed-off-by: Borislav Petkov (AMD) <bp@xxxxxxxxx>
---
arch/x86/include/asm/alternative.h | 22 +---------------------
1 file changed, 1 insertion(+), 21 deletions(-)

diff --git a/arch/x86/include/asm/alternative.h b/arch/x86/include/asm/alternative.h
index fba12ad237e2..31b9a47b9df9 100644
--- a/arch/x86/include/asm/alternative.h
+++ b/arch/x86/include/asm/alternative.h
@@ -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
--
2.43.0