]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
x86/bpf: Avoid emitting LOCK prefix for XCHG atomic ops
authorUros Bizjak <ubizjak@gmail.com>
Mon, 8 Dec 2025 16:33:34 +0000 (17:33 +0100)
committerAlexei Starovoitov <ast@kernel.org>
Sun, 21 Dec 2025 18:55:55 +0000 (10:55 -0800)
commite09f6be4a3558e01afb4d16705ce57006a6f9712
tree249e41c8118b2b70c88ea6d88ddaa45409dccc42
parentc2f2f005a1c2e2d06f07511068917fa729614c18
x86/bpf: Avoid emitting LOCK prefix for XCHG atomic ops

The x86 XCHG instruction is implicitly locked when one of the
operands is a memory location, making an explicit LOCK prefix
unnecessary.

Stop emitting the LOCK prefix for BPF_XCHG in the JIT atomic
read-modify-write helpers. This avoids redundant instruction
prefixes while preserving correct atomic semantics.

No functional change for other atomic operations.

Signed-off-by: Uros Bizjak <ubizjak@gmail.com>
Cc: Alexei Starovoitov <ast@kernel.org>
Cc: Daniel Borkmann <daniel@iogearbox.net>
Cc: Andrii Nakryiko <andrii@kernel.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@kernel.org>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Dave Hansen <dave.hansen@linux.intel.com>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Link: https://lore.kernel.org/r/20251208163420.7643-1-ubizjak@gmail.com
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
arch/x86/net/bpf_jit_comp.c