diff options
author | Pu Lehui <pulehui@huawei.com> | 2024-01-30 12:46:58 +0000 |
---|---|---|
committer | Daniel Borkmann <daniel@iogearbox.net> | 2024-02-01 11:35:48 +0100 |
commit | 69065aa11ca680d76a6c6bc088aa0f0abe24afdb (patch) | |
tree | 0228b8ec5043cee4077500406119b3c0aa777d7a /arch/riscv/net | |
parent | 088a464ed53feeab9632c6748b9f25354639e2bd (diff) | |
download | lwn-69065aa11ca680d76a6c6bc088aa0f0abe24afdb.tar.gz lwn-69065aa11ca680d76a6c6bc088aa0f0abe24afdb.zip |
riscv, bpf: Enable inline bpf_kptr_xchg() for RV64
RV64 JIT supports 64-bit BPF_XCHG atomic instructions. At the same time,
the underlying implementation of xchg() and atomic64_xchg() in RV64 both
are raw_xchg() that supported 64-bit. Therefore inline bpf_kptr_xchg()
will have equivalent semantics. Let's inline it for better performance.
Signed-off-by: Pu Lehui <pulehui@huawei.com>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Acked-by: Björn Töpel <bjorn@kernel.org>
Link: https://lore.kernel.org/bpf/20240130124659.670321-2-pulehui@huaweicloud.com
Diffstat (limited to 'arch/riscv/net')
-rw-r--r-- | arch/riscv/net/bpf_jit_comp64.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/arch/riscv/net/bpf_jit_comp64.c b/arch/riscv/net/bpf_jit_comp64.c index fda6b4f6a4c1..869e4282a2c4 100644 --- a/arch/riscv/net/bpf_jit_comp64.c +++ b/arch/riscv/net/bpf_jit_comp64.c @@ -1806,3 +1806,8 @@ bool bpf_jit_supports_kfunc_call(void) { return true; } + +bool bpf_jit_supports_ptr_xchg(void) +{ + return true; +} |