1 .. SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2 3 ================== 4 bpftool-struct_ops 5 ================== 6 ------------------------------------------------------------------------------- 7 tool to register/unregister/introspect BPF struct_ops 8 ------------------------------------------------------------------------------- 9 10 :Manual section: 8 11 12 .. include:: substitutions.rst 13 14 SYNOPSIS 15 ======== 16 17 **bpftool** [*OPTIONS*] **struct_ops** *COMMAND* 18 19 *OPTIONS* := { |COMMON_OPTIONS| } 20 21 *COMMANDS* := 22 { **show** | **list** | **dump** | **register** | **unregister** | **help** } 23 24 STRUCT_OPS COMMANDS 25 =================== 26 27 | **bpftool** **struct_ops { show | list }** [*STRUCT_OPS_MAP*] 28 | **bpftool** **struct_ops dump** [*STRUCT_OPS_MAP*] 29 | **bpftool** **struct_ops register** *OBJ* [*LINK_DIR*] 30 | **bpftool** **struct_ops unregister** *STRUCT_OPS_MAP* 31 | **bpftool** **struct_ops help** 32 | 33 | *STRUCT_OPS_MAP* := { **id** *STRUCT_OPS_MAP_ID* | **name** *STRUCT_OPS_MAP_NAME* } 34 | *OBJ* := /a/file/of/bpf_struct_ops.o 35 36 37 DESCRIPTION 38 =========== 39 bpftool struct_ops { show | list } [*STRUCT_OPS_MAP*] 40 Show brief information about the struct_ops in the system. If 41 *STRUCT_OPS_MAP* is specified, it shows information only for the given 42 struct_ops. Otherwise, it lists all struct_ops currently existing in the 43 system. 44 45 Output will start with struct_ops map ID, followed by its map name and its 46 struct_ops's kernel type. 47 48 bpftool struct_ops dump [*STRUCT_OPS_MAP*] 49 Dump details information about the struct_ops in the system. If 50 *STRUCT_OPS_MAP* is specified, it dumps information only for the given 51 struct_ops. Otherwise, it dumps all struct_ops currently existing in the 52 system. 53 54 bpftool struct_ops register *OBJ* [*LINK_DIR*] 55 Register bpf struct_ops from *OBJ*. All struct_ops under the ELF section 56 ".struct_ops" and ".struct_ops.link" will be registered to its kernel 57 subsystem. For each struct_ops in the ".struct_ops.link" section, a link 58 will be created. You can give *LINK_DIR* to provide a directory path where 59 these links will be pinned with the same name as their corresponding map 60 name. 61 62 bpftool struct_ops unregister *STRUCT_OPS_MAP* 63 Unregister the *STRUCT_OPS_MAP* from the kernel subsystem. 64 65 bpftool struct_ops help 66 Print short help message. 67 68 OPTIONS 69 ======= 70 .. include:: common_options.rst 71 72 EXAMPLES 73 ======== 74 **# bpftool struct_ops show** 75 76 :: 77 78 100: dctcp tcp_congestion_ops 79 105: cubic tcp_congestion_ops 80 81 **# bpftool struct_ops unregister id 105** 82 83 :: 84 85 Unregistered tcp_congestion_ops cubic id 105 86 87 **# bpftool struct_ops register bpf_cubic.o** 88 89 :: 90 91 Registered tcp_congestion_ops cubic id 110
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.