mirror of
https://github.com/torvalds/linux.git
synced 2026-06-05 04:56:13 +02:00
__bpf_arch_text_poke does rewrite only for atomic nop5, emit_nops(xxx, 5)
emits non-atomic one which breaks fentry/fexit with k8 atomics:
P6_NOP5 == P6_NOP5_ATOMIC (0f1f440000 == 0f1f440000)
K8_NOP5 != K8_NOP5_ATOMIC (6666906690 != 6666666690)
Can be reproduced by doing "ideal_nops = k8_nops" in "arch_init_ideal_nops()
and running fexit_bpf2bpf selftest.
Fixes:
|
||
|---|---|---|
| .. | ||
| bpf_jit_comp.c | ||
| bpf_jit_comp32.c | ||
| Makefile | ||