1===============
2bpftool-feature
3===============
4-------------------------------------------------------------------------------
5tool for inspection of eBPF-related parameters for Linux kernel or net device
6-------------------------------------------------------------------------------
7
8:Manual section: 8
9
10SYNOPSIS
11========
12
13	**bpftool** [*OPTIONS*] **feature** *COMMAND*
14
15	*OPTIONS* := { { **-j** | **--json** } [{ **-p** | **--pretty** }] }
16
17	*COMMANDS* := { **probe** | **help** }
18
19FEATURE COMMANDS
20================
21
22|	**bpftool** **feature probe** [*COMPONENT*] [**macros** [**prefix** *PREFIX*]]
23|	**bpftool** **feature help**
24|
25|	*COMPONENT* := { **kernel** | **dev** *NAME* }
26
27DESCRIPTION
28===========
29	**bpftool feature probe** [**kernel**] [**macros** [**prefix** *PREFIX*]]
30		  Probe the running kernel and dump a number of eBPF-related
31		  parameters, such as availability of the **bpf()** system call,
32		  JIT status, eBPF program types availability, eBPF helper
33		  functions availability, and more.
34
35		  If the **macros** keyword (but not the **-j** option) is
36		  passed, a subset of the output is dumped as a list of
37		  **#define** macros that are ready to be included in a C
38		  header file, for example. If, additionally, **prefix** is
39		  used to define a *PREFIX*, the provided string will be used
40		  as a prefix to the names of the macros: this can be used to
41		  avoid conflicts on macro names when including the output of
42		  this command as a header file.
43
44		  Keyword **kernel** can be omitted. If no probe target is
45		  specified, probing the kernel is the default behaviour.
46
47		  Note that when probed, some eBPF helpers (e.g.
48		  **bpf_trace_printk**\ () or **bpf_probe_write_user**\ ()) may
49		  print warnings to kernel logs.
50
51	**bpftool feature probe dev** *NAME* [**macros** [**prefix** *PREFIX*]]
52		  Probe network device for supported eBPF features and dump
53		  results to the console.
54
55		  The two keywords **macros** and **prefix** have the same
56		  role as when probing the kernel.
57
58	**bpftool feature help**
59		  Print short help message.
60
61OPTIONS
62=======
63	-h, --help
64		  Print short generic help message (similar to **bpftool help**).
65
66	-V, --version
67		  Print version number (similar to **bpftool version**).
68
69	-j, --json
70		  Generate JSON output. For commands that cannot produce JSON, this
71		  option has no effect.
72
73	-p, --pretty
74		  Generate human-readable JSON output. Implies **-j**.
75
76	-d, --debug
77		  Print all logs available from libbpf, including debug-level
78		  information.
79
80SEE ALSO
81========
82	**bpf**\ (2),
83	**bpf-helpers**\ (7),
84	**bpftool**\ (8),
85	**bpftool-prog**\ (8),
86	**bpftool-map**\ (8),
87	**bpftool-cgroup**\ (8),
88	**bpftool-net**\ (8),
89	**bpftool-perf**\ (8),
90	**bpftool-btf**\ (8)
91