mirror_ubuntu-kernels/arch/powerpc
Naveen N Rao 9670f6d209 powerpc64/bpf: Fold bpf_jit_emit_func_call_hlp() into bpf_jit_emit_func_call_rel()
Commit 61688a82e0 ("powerpc/bpf: enable kfunc call") enhanced
bpf_jit_emit_func_call_hlp() to handle calls out to module region, where
bpf progs are generated. The only difference now between
bpf_jit_emit_func_call_hlp() and bpf_jit_emit_func_call_rel() is in
handling of the initial pass where target function address is not known.
Fold that logic into bpf_jit_emit_func_call_hlp() and rename it to
bpf_jit_emit_func_call_rel() to simplify bpf function call JIT code.

We don't actually need to load/restore TOC across a call out to a
different kernel helper or to a different bpf program since they all
work with the kernel TOC. We only need to do it if we have to call out
to a module function. So, guard TOC load/restore with appropriate
conditions.

Signed-off-by: Naveen N Rao <naveen@kernel.org>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://patch.msgid.link/20241030070850.1361304-10-hbathini@linux.ibm.com
2024-10-31 11:00:54 +11:00
..
boot powerpc/64: Remove maple platform 2024-10-29 23:01:52 +11:00
configs powerpc/64: Remove maple platform 2024-10-29 23:01:52 +11:00
crypto move asm/unaligned.h to linux/unaligned.h 2024-10-02 17:23:23 -04:00
include powerpc/ftrace: Remove pointer to struct module from dyn_arch_ftrace 2024-10-31 11:00:53 +11:00
kernel powerpc/ftrace: Move ftrace stub used for init text before _einittext 2024-10-31 11:00:54 +11:00
kexec powerpc updates for 6.11 2024-07-19 21:00:33 -07:00
kvm struct fd layout change (and conversion to accessor helpers) 2024-09-23 09:35:36 -07:00
lib powerpc/vdso32: Fix use of crtsavres for PPC64 2024-09-20 19:06:19 +10:00
math-emu
mm book3s64/hash: Early detect debug_pagealloc size requirement 2024-10-23 18:53:20 +11:00
net powerpc64/bpf: Fold bpf_jit_emit_func_call_hlp() into bpf_jit_emit_func_call_rel() 2024-10-31 11:00:54 +11:00
perf powerpc/perf: Set cpumode flags using sample address 2024-06-17 22:47:16 +10:00
platforms powerpc/64: Remove maple platform 2024-10-29 23:01:52 +11:00
purgatory Makefile: remove redundant tool coverage variables 2024-05-14 23:35:48 +09:00
sysdev powerpc/machdep: Drop include of seq_file.h 2024-10-29 23:01:05 +11:00
tools powerpc/tools: Pass -mabi=elfv2 to gcc-check-mprofile-kernel.sh 2023-10-20 17:46:33 +11:00
xmon powerpc/xmon: Fix tmpstr length check in scanhex 2024-08-27 17:10:55 +10:00
Kbuild powerpc: Fix fatal warnings flag for LLVM's integrated assembler 2024-04-08 16:06:41 +10:00
Kconfig powerpc: Fix stack protector Kconfig test for clang 2024-10-23 21:11:55 +11:00
Kconfig.debug powerpc/64: Remove maple platform 2024-10-29 23:01:52 +11:00
Makefile powerpc/boot: Remove bogus reference to lilo 2024-10-29 23:01:47 +11:00
Makefile.postlink kbuild: remove ARCH_POSTLINK from module builds 2023-10-28 21:10:08 +09:00