linux/arch/arm64
Daniel Borkmann 8c11ea5ce1 bpf, arm64: fix getting subprog addr from aux for calls
The arm64 JIT has the same issue as ppc64 JIT in that the relative BPF
to BPF call offset can be too far away from core kernel in that relative
encoding into imm is not sufficient and could potentially be truncated,
see also fd045f6cd9 ("arm64: add support for module PLTs") which adds
spill-over space for module_alloc() and therefore bpf_jit_binary_alloc().
Therefore, use the recently added bpf_jit_get_func_addr() helper for
properly fetching the address through prog->aux->func[off]->bpf_func
instead. This also has the benefit to optimize normal helper calls since
their address can use the optimized emission. Tested on Cavium ThunderX
CN8890.

Fixes: db496944fd ("bpf: arm64: add JIT support for multi-function programs")
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
2018-11-26 17:34:24 -08:00
..
boot ARM: dts: stratix10: fix multicast filtering 2018-11-07 08:09:50 -08:00
configs arm64: defconfig: Enable some IPMI configs 2018-11-02 11:39:50 -07:00
crypto crypto: arm64/aes-blk - ensure XTS mask is always loaded 2018-10-12 14:20:45 +08:00
include arm64: sysreg: fix sparse warnings 2018-11-23 17:33:27 +00:00
kernel arm64: cpufeature: Fix mismerge of CONFIG_ARM64_SSBD block 2018-11-23 18:44:16 +00:00
kvm KVM updates for v4.20 2018-10-25 17:57:35 -07:00
lib arm64: lib: use C string functions with KASAN enabled 2018-10-26 16:25:18 -07:00
mm arm64: memblock: don't permit memblock resizing until linear mapping is up 2018-11-08 17:54:03 +00:00
net bpf, arm64: fix getting subprog addr from aux for calls 2018-11-26 17:34:24 -08:00
xen arm64: mm: Add additional parameter to uaccess_ttbr0_disable 2018-01-17 13:57:49 +01:00
Kconfig mm: remove CONFIG_HAVE_MEMBLOCK 2018-10-31 08:54:15 -07:00
Kconfig.debug Kconfig: consolidate the "Kernel hacking" menu 2018-08-02 08:06:48 +09:00
Kconfig.platforms ARM: SoC platform updates for 4.20 2018-10-29 15:37:33 -07:00
Makefile arm64 2nd round of updates for 4.20: 2018-11-03 10:55:23 -07:00