diff options
author | Uros Bizjak <ubizjak@gmail.com> | 2025-06-16 10:35:57 +0200 |
---|---|---|
committer | Borislav Petkov (AMD) <bp@alien8.de> | 2025-08-22 18:54:07 +0200 |
commit | 966f504977e3a04fcadbaf199e3302e95e8958b7 (patch) | |
tree | 5412b6d4fd395bbeb71880121f48c59757721342 | |
parent | d20a5d96eddb95b4faa33247ec653a580c48fdfa (diff) |
x86/asm: Use RDPKRU and WRPKRU mnemonics in <asm/special_insns.h>
Current minimum required version of binutils is 2.30, which supports RDPKRU and
WRPKRU instruction mnemonics.
Replace the byte-wise specification of RDPKRU and WRPKRU with these proper
mnemonics.
No functional change intended.
Signed-off-by: Uros Bizjak <ubizjak@gmail.com>
Signed-off-by: Borislav Petkov (AMD) <bp@alien8.de>
Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Link: https://lore.kernel.org/20250616083611.157740-1-ubizjak@gmail.com
-rw-r--r-- | arch/x86/include/asm/special_insns.h | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/arch/x86/include/asm/special_insns.h b/arch/x86/include/asm/special_insns.h index fde2bd7af19e..c99914569352 100644 --- a/arch/x86/include/asm/special_insns.h +++ b/arch/x86/include/asm/special_insns.h @@ -75,9 +75,7 @@ static inline u32 rdpkru(void) * "rdpkru" instruction. Places PKRU contents in to EAX, * clears EDX and requires that ecx=0. */ - asm volatile(".byte 0x0f,0x01,0xee\n\t" - : "=a" (pkru), "=d" (edx) - : "c" (ecx)); + asm volatile("rdpkru" : "=a" (pkru), "=d" (edx) : "c" (ecx)); return pkru; } @@ -89,8 +87,7 @@ static inline void wrpkru(u32 pkru) * "wrpkru" instruction. Loads contents in EAX to PKRU, * requires that ecx = edx = 0. */ - asm volatile(".byte 0x0f,0x01,0xef\n\t" - : : "a" (pkru), "c"(ecx), "d"(edx)); + asm volatile("wrpkru" : : "a" (pkru), "c"(ecx), "d"(edx)); } #else |