Re: a small question about bpftool struct_ops

From: Martin KaFai Lau
Date: Fri May 19 2023 - 15:01:21 EST


On 5/19/23 5:07 AM, Zhouyi Zhou wrote:
Dear developers:
I compiled bpftool and bpf tests in mainline (2d1bcbc6cd70),
but when I invoke:
bpftool struct_ops register bpf_cubic.bpf.o

the command line fail with:
libbpf: struct_ops init_kern: struct tcp_congestion_ops data is not
found in struct bpf_struct_ops_tcp_congestion_ops

At the machine trying to register the bpf_cubic, please dump the vmlinux btf and search for bpf_struct_ops_tcp_congestion_ops and paste it here:

For example:
#> bpftool btf dump file /sys/kernel/btf/vmlinux

...

[74578] STRUCT 'bpf_struct_ops_tcp_congestion_ops' size=256 vlen=3
'refcnt' type_id=145 bits_offset=0
'state' type_id=74569 bits_offset=32
'data' type_id=6241 bits_offset=512