]> www.infradead.org Git - users/hch/dma-mapping.git/commit
riscv, bpf: Fix possible infinite tailcall when CONFIG_CFI_CLANG is enabled
authorPu Lehui <pulehui@huawei.com>
Tue, 8 Oct 2024 12:45:44 +0000 (12:45 +0000)
committerAlexei Starovoitov <ast@kernel.org>
Thu, 10 Oct 2024 01:23:06 +0000 (18:23 -0700)
commit30a59cc79754fd9ff3f41b7ee2eb21da85988548
treebb6dcb5eb5a1b9f098ea2492e59e591a3f37a161
parent4538a38f654a1c292fe489a9b66179262bfed088
riscv, bpf: Fix possible infinite tailcall when CONFIG_CFI_CLANG is enabled

When CONFIG_CFI_CLANG is enabled, the number of prologue instructions
skipped by tailcall needs to include the kcfi instruction, otherwise the
TCC will be initialized every tailcall is called, which may result in
infinite tailcalls.

Fixes: e63985ecd226 ("bpf, riscv64/cfi: Support kCFI + BPF on riscv64")
Signed-off-by: Pu Lehui <pulehui@huawei.com>
Acked-by: Björn Töpel <bjorn@kernel.org>
Link: https://lore.kernel.org/r/20241008124544.171161-1-pulehui@huaweicloud.com
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
arch/riscv/net/bpf_jit_comp64.c