4 -------------------------------------------------------------------------------
5 tool to register/unregister/introspect BPF struct_ops
6 -------------------------------------------------------------------------------
13 **bpftool** [*OPTIONS*] **struct_ops** *COMMAND*
15 *OPTIONS* := { { **-j** | **--json** } [{ **-p** | **--pretty** }] }
18 { **show** | **list** | **dump** | **register** | **unregister** | **help** }
23 | **bpftool** **struct_ops { show | list }** [*STRUCT_OPS_MAP*]
24 | **bpftool** **struct_ops dump** [*STRUCT_OPS_MAP*]
25 | **bpftool** **struct_ops register** *OBJ*
26 | **bpftool** **struct_ops unregister** *STRUCT_OPS_MAP*
27 | **bpftool** **struct_ops help**
29 | *STRUCT_OPS_MAP* := { **id** *STRUCT_OPS_MAP_ID* | **name** *STRUCT_OPS_MAP_NAME* }
30 | *OBJ* := /a/file/of/bpf_struct_ops.o
35 **bpftool struct_ops { show | list }** [*STRUCT_OPS_MAP*]
36 Show brief information about the struct_ops in the system.
37 If *STRUCT_OPS_MAP* is specified, it shows information only
38 for the given struct_ops. Otherwise, it lists all struct_ops
39 currently existing in the system.
41 Output will start with struct_ops map ID, followed by its map
42 name and its struct_ops's kernel type.
44 **bpftool struct_ops dump** [*STRUCT_OPS_MAP*]
45 Dump details information about the struct_ops in the system.
46 If *STRUCT_OPS_MAP* is specified, it dumps information only
47 for the given struct_ops. Otherwise, it dumps all struct_ops
48 currently existing in the system.
50 **bpftool struct_ops register** *OBJ*
51 Register bpf struct_ops from *OBJ*. All struct_ops under
52 the ELF section ".struct_ops" will be registered to
55 **bpftool struct_ops unregister** *STRUCT_OPS_MAP*
56 Unregister the *STRUCT_OPS_MAP* from the kernel subsystem.
58 **bpftool struct_ops help**
59 Print short help message.
64 Print short generic help message (similar to **bpftool help**).
67 Print version number (similar to **bpftool version**).
70 Generate JSON output. For commands that cannot produce JSON, this
74 Generate human-readable JSON output. Implies **-j**.
77 Print all logs available, even debug-level information. This
78 includes logs from libbpf as well as from the verifier, when
79 attempting to load programs.
83 **# bpftool struct_ops show**
87 100: dctcp tcp_congestion_ops
88 105: cubic tcp_congestion_ops
90 **# bpftool struct_ops unregister id 105**
94 Unregistered tcp_congestion_ops cubic id 105
96 **# bpftool struct_ops register bpf_cubic.o**
100 Registered tcp_congestion_ops cubic id 110
106 **bpf-helpers**\ (7),
108 **bpftool-prog**\ (8),
109 **bpftool-map**\ (8),
110 **bpftool-cgroup**\ (8),
111 **bpftool-feature**\ (8),
112 **bpftool-net**\ (8),
113 **bpftool-perf**\ (8),