Thread (35 messages) 35 messages, 4 authors, 2023-12-09

Re: [PATCH v2 2/2] x86/cfi,bpf: Fix BPF JIT call

From: Peter Zijlstra <peterz@infradead.org>
Date: 2023-12-08 20:57:25
Also in: bpf, linux-arch, linux-riscv, lkml, llvm

On Fri, Dec 08, 2023 at 12:45:51PM -0800, Alexei Starovoitov wrote:
I mean we don't need to store a pointer to a func in stubs.
Can it be, roughly:

extern void bpf_tcp_ca_cong_avoid(struct sock *sk, u32 ack, u32 acked);
KCFI_MACRO(hash_of_cong_avoid, bpf_tcp_ca_cong_avoid);
u32 __array_of_kcfi_hash[] = {hash_of_cong_avoid, hash_of_set_state,...};
      .bpf_ops_stubs = __array_of_kcfi_hash,
But then how do I index this array? The bpf_ops_stubs thing having the
same layout at the target struct made it easy and we could use 'moff'
for both.

That also remains working if someone adds a member to the struct or
moves some members around.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help