Commit 075c7766 authored by Andrii Nakryiko's avatar Andrii Nakryiko Committed by Alexei Starovoitov
Browse files

tools/bpftool: Add documentation and sample output for process info



Add statements about bpftool being able to discover process info, holding
reference to BPF map, prog, link, or BTF. Show example output as well.

Signed-off-by: default avatarAndrii Nakryiko <andriin@fb.com>
Signed-off-by: default avatarAlexei Starovoitov <ast@kernel.org>
Reviewed-by: default avatarQuentin Monnet <quentin@isovalent.com>
Link: https://lore.kernel.org/bpf/20200619231703.738941-10-andriin@fb.com
parent d53dee3f
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -36,6 +36,11 @@ DESCRIPTION
		  otherwise list all BTF objects currently loaded on the
		  system.

		  Since Linux 5.8 bpftool is able to discover information about
		  processes that hold open file descriptors (FDs) against BTF
		  objects. On such kernels bpftool will automatically emit this
		  information as well.

	**bpftool btf dump** *BTF_SRC*
		  Dump BTF entries from a given *BTF_SRC*.

+12 −1
Original line number Diff line number Diff line
@@ -37,6 +37,11 @@ DESCRIPTION
		  zero or more named attributes, some of which depend on type
		  of link.

		  Since Linux 5.8 bpftool is able to discover information about
		  processes that hold open file descriptors (FDs) against BPF
		  links. On such kernels bpftool will automatically emit this
		  information as well.

	**bpftool link pin** *LINK* *FILE*
		  Pin link *LINK* as *FILE*.

@@ -82,6 +87,7 @@ EXAMPLES

    10: cgroup  prog 25
            cgroup_id 614  attach_type egress
            pids test_progs(223)

**# bpftool --json --pretty link show**

@@ -91,7 +97,12 @@ EXAMPLES
            "type": "cgroup",
            "prog_id": 25,
            "cgroup_id": 614,
            "attach_type": "egress"
            "attach_type": "egress",
            "pids": [{
                    "pid": 223,
                    "comm": "test_progs"
                }
            ]
        }
    ]

+7 −1
Original line number Diff line number Diff line
@@ -62,6 +62,11 @@ DESCRIPTION
		  Output will start with map ID followed by map type and
		  zero or more named attributes (depending on kernel version).

		  Since Linux 5.8 bpftool is able to discover information about
		  processes that hold open file descriptors (FDs) against BPF
		  maps. On such kernels bpftool will automatically emit this
		  information as well.

	**bpftool map create** *FILE* **type** *TYPE* **key** *KEY_SIZE* **value** *VALUE_SIZE*  **entries** *MAX_ENTRIES* **name** *NAME* [**flags** *FLAGS*] [**dev** *NAME*]
		  Create a new map with given parameters and pin it to *bpffs*
		  as *FILE*.
@@ -181,6 +186,7 @@ EXAMPLES

  10: hash  name some_map  flags 0x0
        key 4B  value 8B  max_entries 2048  memlock 167936B
        pids systemd(1)

The following three commands are equivalent:

+11 −0
Original line number Diff line number Diff line
@@ -75,6 +75,11 @@ DESCRIPTION
		  program run. Activation or deactivation of the feature is
		  performed via the **kernel.bpf_stats_enabled** sysctl knob.

		  Since Linux 5.8 bpftool is able to discover information about
		  processes that hold open file descriptors (FDs) against BPF
		  programs. On such kernels bpftool will automatically emit this
		  information as well.

	**bpftool prog dump xlated** *PROG* [{ **file** *FILE* | **opcodes** | **visual** | **linum** }]
		  Dump eBPF instructions of the programs from the kernel. By
		  default, eBPF will be disassembled and printed to standard
@@ -243,6 +248,7 @@ EXAMPLES
    10: xdp  name some_prog  tag 005a3d2123620c8b  gpl run_time_ns 81632 run_cnt 10
            loaded_at 2017-09-29T20:11:00+0000  uid 0
            xlated 528B  jited 370B  memlock 4096B  map_ids 10
            pids systemd(1)

**# bpftool --json --pretty prog show**

@@ -262,6 +268,11 @@ EXAMPLES
            "bytes_jited": 370,
            "bytes_memlock": 4096,
            "map_ids": [10
            ],
            "pids": [{
                    "pid": 1,
                    "comm": "systemd"
                }
            ]
        }
    ]