TencentOS-kernel/arch/x86
Daniel Borkmann 6c7c8badfe bpf, x86: Generalize and extend bpf_arch_text_poke for direct jumps
[upstream commit 4b3da77b72ad6b3c48c6fe4a395ace7db39a12c5]

Add BPF_MOD_{NOP_TO_JUMP,JUMP_TO_JUMP,JUMP_TO_NOP} patching for x86
JIT in order to be able to patch direct jumps or nop them out. We need
this facility in order to patch tail call jumps and in later work also
BPF static keys.

Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Acked-by: Andrii Nakryiko <andriin@fb.com>
Link: https://lore.kernel.org/bpf/aa4784196a8e5e985af4b30a4fe5336bce6e9643.1574452833.git.daniel@iogearbox.net
2022-08-30 11:33:19 +08:00
..
boot x86/asm: Replace __force_order with a memory clobber 2021-03-16 16:39:12 +08:00
configs vgacon: remove software scrollback support 2021-03-16 16:36:07 +08:00
crypto crypto: x86/aes-ni-xts - use direct calls to and 4-way stride 2021-04-12 12:53:14 +08:00
entry sli/cpu: introduce longsys check 2021-10-29 06:51:52 +00:00
events perf/amd/uncore: Add support for Family 19h L3 PMU 2021-09-23 19:21:43 +08:00
hyperv x86/hyperv: check cpu mask after interrupt has been disabled 2021-04-12 12:51:21 +08:00
ia32 Init Repo base on linux 5.4.32 long term, and add base tlinux kernel interfaces. 2021-03-16 11:01:34 +08:00
include locking/qspinlock: Introduce llc aware spinlock 2022-03-02 10:48:05 +08:00
kernel locking/qspinlock: Introduce llc aware spinlock 2022-03-02 10:48:05 +08:00
kvm x86/process/64: Make save_fsgs_for_kvm() ready for FSGSBASE 2021-08-17 06:29:11 +00:00
lib x86/cpufeatures: Add support for fast short REP; MOVSB 2022-03-02 10:48:04 +08:00
math-emu x86: math-emu: Fix up 'cmp' insn for clang ias 2021-03-16 16:32:34 +08:00
mm uaccess: Add strict non-pagefault kernel-space read function 2022-08-30 11:33:18 +08:00
net bpf, x86: Generalize and extend bpf_arch_text_poke for direct jumps 2022-08-30 11:33:19 +08:00
oprofile Init Repo base on linux 5.4.32 long term, and add base tlinux kernel interfaces. 2021-03-16 11:01:34 +08:00
pci x86/PCI: Fix intel_mid_pci.c build error when ACPI is not enabled 2021-03-16 16:39:28 +08:00
platform efi/x86: Free efi_pgd with free_pages() 2021-03-16 16:41:24 +08:00
power x86/asm/32: Add ENDs to some functions and relabel with SYM_CODE_* 2021-04-12 12:51:15 +08:00
purgatory x86/purgatory: Disable various profiling and sanitizing options 2021-03-16 16:30:08 +08:00
ras Init Repo base on linux 5.4.32 long term, and add base tlinux kernel interfaces. 2021-03-16 11:01:34 +08:00
realmode x86/asm/32: Add ENDs to some functions and relabel with SYM_CODE_* 2021-04-12 12:51:15 +08:00
tools x86/build: Treat R_386_PLT32 relocation as R_386_PC32 2021-04-12 12:52:46 +08:00
um Init Repo base on linux 5.4.32 long term, and add base tlinux kernel interfaces. 2021-03-16 11:01:34 +08:00
video Init Repo base on linux 5.4.32 long term, and add base tlinux kernel interfaces. 2021-03-16 11:01:34 +08:00
xen Xen/gnttab: handle p2m update errors on a per-slot basis 2021-04-12 12:52:49 +08:00
.gitignore Init Repo base on linux 5.4.32 long term, and add base tlinux kernel interfaces. 2021-03-16 11:01:34 +08:00
Kbuild Init Repo base on linux 5.4.32 long term, and add base tlinux kernel interfaces. 2021-03-16 11:01:34 +08:00
Kconfig locking/qspinlock: Introduce CNA into the slow path of qspinlock 2022-03-02 10:48:05 +08:00
Kconfig.cpu x86/intel: Initialize IA32_FEAT_CTL MSR at boot 2021-07-12 08:56:46 +00:00
Kconfig.debug Init Repo base on linux 5.4.32 long term, and add base tlinux kernel interfaces. 2021-03-16 11:01:34 +08:00
Makefile x86/build: Propagate $(CLANG_FLAGS) to $(REALMODE_FLAGS) 2021-05-20 16:07:24 +08:00
Makefile.um Init Repo base on linux 5.4.32 long term, and add base tlinux kernel interfaces. 2021-03-16 11:01:34 +08:00
Makefile_32.cpu Init Repo base on linux 5.4.32 long term, and add base tlinux kernel interfaces. 2021-03-16 11:01:34 +08:00