mirror of
https://github.com/torvalds/linux.git
synced 2026-05-22 14:12:07 +02:00
x86/asm: Replace "REP; NOP" with PAUSE mnemonic
Current minimum required version of binutils is 2.25, which supports PAUSE instruction mnemonic. Replace "REP; NOP" with this proper mnemonic. No functional change intended. Reviewed-by: Nikolay Borisov <nik.borisov@suse.com> Signed-off-by: Uros Bizjak <ubizjak@gmail.com> Signed-off-by: Ingo Molnar <mingo@kernel.org> Cc: H. Peter Anvin <hpa@zytor.com> Link: https://lore.kernel.org/r/20250418080805.83679-2-ubizjak@gmail.com
This commit is contained in:
parent
42c782fae3
commit
d109ff4f0b
|
|
@ -34,7 +34,7 @@
|
|||
extern struct setup_header hdr;
|
||||
extern struct boot_params boot_params;
|
||||
|
||||
#define cpu_relax() asm volatile("rep; nop")
|
||||
#define cpu_relax() asm volatile("pause")
|
||||
|
||||
static inline void io_delay(void)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -7,10 +7,10 @@
|
|||
|
||||
#ifndef __ASSEMBLER__
|
||||
|
||||
/* REP NOP (PAUSE) is a good thing to insert into busy-wait loops. */
|
||||
/* PAUSE is a good thing to insert into busy-wait loops. */
|
||||
static __always_inline void rep_nop(void)
|
||||
{
|
||||
asm volatile("rep; nop" ::: "memory");
|
||||
asm volatile("pause" ::: "memory");
|
||||
}
|
||||
|
||||
static __always_inline void cpu_relax(void)
|
||||
|
|
|
|||
|
|
@ -405,7 +405,7 @@ SYM_CODE_START_LOCAL_NOALIGN(pr_char_8250)
|
|||
inb %dx, %al
|
||||
testb $XMTRDY, %al
|
||||
jnz .Lready
|
||||
rep nop
|
||||
pause
|
||||
jmp .Lxmtrdy_loop
|
||||
|
||||
.Lready:
|
||||
|
|
@ -426,7 +426,7 @@ SYM_CODE_START_LOCAL_NOALIGN(pr_char_8250_mmio32)
|
|||
movb (LSR*4)(%rdx), %ah
|
||||
testb $XMTRDY, %ah
|
||||
jnz .Lready_mmio
|
||||
rep nop
|
||||
pause
|
||||
jmp .Lxmtrdy_loop_mmio
|
||||
|
||||
.Lready_mmio:
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user