Skip to content

Latest commit

 

History

History
83 lines (64 loc) · 3.39 KB

bpftool-feature.rst

File metadata and controls

83 lines (64 loc) · 3.39 KB

bpftool-feature

Manual section:8

SYNOPSIS

bpftool [OPTIONS] feature COMMAND

OPTIONS := { |COMMON_OPTIONS| }

COMMANDS := { probe | help }

FEATURE COMMANDS

bpftool feature probe [COMPONENT] [full] [unprivileged] [macros [prefix PREFIX]]
bpftool feature list_builtins GROUP
bpftool feature help

COMPONENT := { kernel | dev NAME }
GROUP := { prog_types | map_types | attach_types | link_types | helpers }

DESCRIPTION

bpftool feature probe [kernel] [full] [macros [prefix PREFIX]]

Probe the running kernel and dump a number of eBPF-related parameters, such as availability of the bpf() system call, JIT status, eBPF program types availability, eBPF helper functions availability, and more.

By default, bpftool does not run probes for bpf_probe_write_user() and bpf_trace_printk() helpers which print warnings to kernel logs. To enable them and run all probes, the full keyword should be used.

If the macros keyword (but not the -j option) is passed, a subset of the output is dumped as a list of #define macros that are ready to be included in a C header file, for example. If, additionally, prefix is used to define a PREFIX, the provided string will be used as a prefix to the names of the macros: this can be used to avoid conflicts on macro names when including the output of this command as a header file.

Keyword kernel can be omitted. If no probe target is specified, probing the kernel is the default behaviour.

When the unprivileged keyword is used, bpftool will dump only the features available to a user who does not have the CAP_SYS_ADMIN capability set. The features available in that case usually represent a small subset of the parameters supported by the system. Unprivileged users MUST use the unprivileged keyword: This is to avoid misdetection if bpftool is inadvertently run as non-root, for example. This keyword is unavailable if bpftool was compiled without libcap.

bpftool feature probe dev NAME [full] [macros [prefix PREFIX]]

Probe network device for supported eBPF features and dump results to the console.

The keywords full, macros and prefix have the same role as when probing the kernel.

bpftool feature list_builtins GROUP
List items known to bpftool. These can be BPF program types (prog_types), BPF map types (map_types), attach types (attach_types), link types (link_types), or BPF helper functions (helpers). The command does not probe the system, but simply lists the elements that bpftool knows from compilation time, as provided from libbpf (for all object types) or from the BPF UAPI header (list of helpers). This can be used in scripts to iterate over BPF types or helpers.
bpftool feature help
Print short help message.

OPTIONS