
Multiple map definition structures exist and user may have non-zero fields in their definition that are not recognized by bpftool and libbpf. The normal behavior is to then fail loading the map. Although this is a good default behavior users may still want to load the map for debugging or other reasons. This patch adds a --mapcompat flag that can be used to override the default behavior and allow loading the map even when it has additional non-zero fields. For now the only user is 'bpftool prog' we can switch over other subcommands as needed. The library exposes an API that consumes a flags field now but I kept the original API around also in case users of the API don't want to expose this. The flags field is an int in case we need more control over how the API call handles errors/features/etc in the future. Signed-off-by: John Fastabend <john.fastabend@gmail.com> Acked-by: Jakub Kicinski <jakub.kicinski@netronome.com> Signed-off-by: Alexei Starovoitov <ast@kernel.org>
68 lines
1.9 KiB
ReStructuredText
68 lines
1.9 KiB
ReStructuredText
================
|
|
BPFTOOL
|
|
================
|
|
-------------------------------------------------------------------------------
|
|
tool for inspection and simple manipulation of eBPF programs and maps
|
|
-------------------------------------------------------------------------------
|
|
|
|
:Manual section: 8
|
|
|
|
SYNOPSIS
|
|
========
|
|
|
|
**bpftool** [*OPTIONS*] *OBJECT* { *COMMAND* | **help** }
|
|
|
|
**bpftool** **batch file** *FILE*
|
|
|
|
**bpftool** **version**
|
|
|
|
*OBJECT* := { **map** | **program** | **cgroup** | **perf** | **net** }
|
|
|
|
*OPTIONS* := { { **-V** | **--version** } | { **-h** | **--help** }
|
|
| { **-j** | **--json** } [{ **-p** | **--pretty** }] }
|
|
|
|
*MAP-COMMANDS* :=
|
|
{ **show** | **list** | **dump** | **update** | **lookup** | **getnext** | **delete**
|
|
| **pin** | **event_pipe** | **help** }
|
|
|
|
*PROG-COMMANDS* := { **show** | **list** | **dump jited** | **dump xlated** | **pin**
|
|
| **load** | **attach** | **detach** | **help** }
|
|
|
|
*CGROUP-COMMANDS* := { **show** | **list** | **attach** | **detach** | **help** }
|
|
|
|
*PERF-COMMANDS* := { **show** | **list** | **help** }
|
|
|
|
*NET-COMMANDS* := { **show** | **list** | **help** }
|
|
|
|
DESCRIPTION
|
|
===========
|
|
*bpftool* allows for inspection and simple modification of BPF objects
|
|
on the system.
|
|
|
|
Note that format of the output of all tools is not guaranteed to be
|
|
stable and should not be depended upon.
|
|
|
|
OPTIONS
|
|
=======
|
|
-h, --help
|
|
Print short help message (similar to **bpftool help**).
|
|
|
|
-v, --version
|
|
Print version number (similar to **bpftool version**).
|
|
|
|
-j, --json
|
|
Generate JSON output. For commands that cannot produce JSON, this
|
|
option has no effect.
|
|
|
|
-p, --pretty
|
|
Generate human-readable JSON output. Implies **-j**.
|
|
|
|
-m, --mapcompat
|
|
Allow loading maps with unknown map definitions.
|
|
|
|
|
|
SEE ALSO
|
|
========
|
|
**bpftool-map**\ (8), **bpftool-prog**\ (8), **bpftool-cgroup**\ (8)
|
|
**bpftool-perf**\ (8), **bpftool-net**\ (8)
|