diff options
| author | Yonghong Song <[email protected]> | 2023-05-02 18:05:43 +0000 |
|---|---|---|
| committer | Andrii Nakryiko <[email protected]> | 2023-05-02 23:19:06 +0000 |
| commit | bf6882aebd0ea67558764d44ddeffc7d253c6eb8 (patch) | |
| tree | e843ea0a3518abe191b3ddf3325f57b0f4c1ffe6 /tools/lib/bpf/bpf_tracing.h | |
| parent | Merge branch 'selftests/bpf: test_progs can read test lists from file' (diff) | |
| download | kernel-bf6882aebd0ea67558764d44ddeffc7d253c6eb8.tar.gz kernel-bf6882aebd0ea67558764d44ddeffc7d253c6eb8.zip | |
bpf: Emit struct bpf_tcp_sock type in vmlinux BTF
In one of our internal testing, we found a case where
- uapi struct bpf_tcp_sock is in vmlinux.h where vmlinux.h is not
generated from the testing kernel
- struct bpf_tcp_sock is not in vmlinux BTF
The above combination caused bpf load failure as the following
memory access
struct bpf_tcp_sock *tcp_sock = ...;
... tcp_sock->snd_cwnd ...
needs CORE relocation but the relocation cannot be resolved since
the kernel BTF does not have corresponding type.
Similar to other previous cases (nf_conn___init, tcp6_sock, mctcp_sock, etc.),
add the type to vmlinux BTF with BTF_EMIT_TYPE macro.
Signed-off-by: Yonghong Song <[email protected]>
Signed-off-by: Andrii Nakryiko <[email protected]>
Link: https://lore.kernel.org/bpf/[email protected]
Diffstat (limited to 'tools/lib/bpf/bpf_tracing.h')
0 files changed, 0 insertions, 0 deletions
