Commit | Line | Data |
---|---|---|
49eb7ab3 QM |
1 | =============== |
2 | bpftool-feature | |
3 | =============== | |
4 | ------------------------------------------------------------------------------- | |
5 | tool for inspection of eBPF-related parameters for Linux kernel or net device | |
6 | ------------------------------------------------------------------------------- | |
7 | ||
8 | :Manual section: 8 | |
9 | ||
10 | SYNOPSIS | |
11 | ======== | |
12 | ||
13 | **bpftool** [*OPTIONS*] **feature** *COMMAND* | |
14 | ||
15 | *OPTIONS* := { { **-j** | **--json** } [{ **-p** | **--pretty** }] } | |
16 | ||
17 | *COMMANDS* := { **probe** | **help** } | |
18 | ||
a5f2d082 PB |
19 | FEATURE COMMANDS |
20 | ================ | |
49eb7ab3 | 21 | |
cf9bf714 | 22 | | **bpftool** **feature probe** [*COMPONENT*] [**full**] [**unprivileged**] [**macros** [**prefix** *PREFIX*]] |
49eb7ab3 | 23 | | **bpftool** **feature help** |
f9499fed QM |
24 | | |
25 | | *COMPONENT* := { **kernel** | **dev** *NAME* } | |
49eb7ab3 QM |
26 | |
27 | DESCRIPTION | |
28 | =========== | |
bcdacab6 | 29 | **bpftool feature probe** [**kernel**] [**full**] [**macros** [**prefix** *PREFIX*]] |
49eb7ab3 | 30 | Probe the running kernel and dump a number of eBPF-related |
f9499fed QM |
31 | parameters, such as availability of the **bpf()** system call, |
32 | JIT status, eBPF program types availability, eBPF helper | |
33 | functions availability, and more. | |
49eb7ab3 | 34 | |
bcdacab6 MR |
35 | By default, bpftool **does not run probes** for |
36 | **bpf_probe_write_user**\ () and **bpf_trace_printk**\() | |
37 | helpers which print warnings to kernel logs. To enable them | |
38 | and run all probes, the **full** keyword should be used. | |
39 | ||
d267cff4 QM |
40 | If the **macros** keyword (but not the **-j** option) is |
41 | passed, a subset of the output is dumped as a list of | |
42 | **#define** macros that are ready to be included in a C | |
43 | header file, for example. If, additionally, **prefix** is | |
44 | used to define a *PREFIX*, the provided string will be used | |
45 | as a prefix to the names of the macros: this can be used to | |
46 | avoid conflicts on macro names when including the output of | |
47 | this command as a header file. | |
48 | ||
f9499fed QM |
49 | Keyword **kernel** can be omitted. If no probe target is |
50 | specified, probing the kernel is the default behaviour. | |
49eb7ab3 | 51 | |
cf9bf714 QM |
52 | When the **unprivileged** keyword is used, bpftool will dump |
53 | only the features available to a user who does not have the | |
54 | **CAP_SYS_ADMIN** capability set. The features available in | |
55 | that case usually represent a small subset of the parameters | |
56 | supported by the system. Unprivileged users MUST use the | |
57 | **unprivileged** keyword: This is to avoid misdetection if | |
58 | bpftool is inadvertently run as non-root, for example. | |
59 | ||
bcdacab6 | 60 | **bpftool feature probe dev** *NAME* [**full**] [**macros** [**prefix** *PREFIX*]] |
f9499fed QM |
61 | Probe network device for supported eBPF features and dump |
62 | results to the console. | |
63 | ||
bcdacab6 MR |
64 | The keywords **full**, **macros** and **prefix** have the |
65 | same role as when probing the kernel. | |
f9499fed | 66 | |
49eb7ab3 QM |
67 | **bpftool feature help** |
68 | Print short help message. | |
69 | ||
70 | OPTIONS | |
71 | ======= | |
72 | -h, --help | |
73 | Print short generic help message (similar to **bpftool help**). | |
74 | ||
88b3eed8 | 75 | -V, --version |
49eb7ab3 QM |
76 | Print version number (similar to **bpftool version**). |
77 | ||
78 | -j, --json | |
79 | Generate JSON output. For commands that cannot produce JSON, this | |
80 | option has no effect. | |
81 | ||
82 | -p, --pretty | |
83 | Generate human-readable JSON output. Implies **-j**. | |
84 | ||
775bc8ad QM |
85 | -d, --debug |
86 | Print all logs available from libbpf, including debug-level | |
87 | information. | |
88 | ||
49eb7ab3 QM |
89 | SEE ALSO |
90 | ======== | |
91 | **bpf**\ (2), | |
92 | **bpf-helpers**\ (7), | |
93 | **bpftool**\ (8), | |
94 | **bpftool-prog**\ (8), | |
95 | **bpftool-map**\ (8), | |
96 | **bpftool-cgroup**\ (8), | |
97 | **bpftool-net**\ (8), | |
ca253339 AN |
98 | **bpftool-perf**\ (8), |
99 | **bpftool-btf**\ (8) |