mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-05-24 10:39:52 +00:00

All bpftool commands support the options for JSON output and debug from libbpf. In addition, some commands support additional options corresponding to specific use cases. The list of options described in the man pages for the different commands are not always accurate. The messages for interactive help are mostly limited to HELP_SPEC_OPTIONS, and are even less representative of the actual set of options supported for the commands. Let's update the lists: - HELP_SPEC_OPTIONS is modified to contain the "default" options (JSON and debug), and to be extensible (no ending curly bracket). - All commands use HELP_SPEC_OPTIONS in their help message, and then complete the list with their specific options. - The lists of options in the man pages are updated. - The formatting of the list for bpftool.rst is adjusted to match formatting for the other man pages. This is for consistency, and also because it will be helpful in a future patch to automatically check that the files are synchronised. Signed-off-by: Quentin Monnet <quentin@isovalent.com> Signed-off-by: Andrii Nakryiko <andrii@kernel.org> Link: https://lore.kernel.org/bpf/20210730215435.7095-5-quentin@isovalent.com
65 lines
2 KiB
ReStructuredText
65 lines
2 KiB
ReStructuredText
================
|
|
bpftool-perf
|
|
================
|
|
-------------------------------------------------------------------------------
|
|
tool for inspection of perf related bpf prog attachments
|
|
-------------------------------------------------------------------------------
|
|
|
|
:Manual section: 8
|
|
|
|
SYNOPSIS
|
|
========
|
|
|
|
**bpftool** [*OPTIONS*] **perf** *COMMAND*
|
|
|
|
*OPTIONS* := { { **-j** | **--json** } [{ **-p** | **--pretty** }] | { **-d** | **--debug** } }
|
|
|
|
*COMMANDS* :=
|
|
{ **show** | **list** | **help** }
|
|
|
|
PERF COMMANDS
|
|
=============
|
|
|
|
| **bpftool** **perf** { **show** | **list** }
|
|
| **bpftool** **perf help**
|
|
|
|
DESCRIPTION
|
|
===========
|
|
**bpftool perf { show | list }**
|
|
List all raw_tracepoint, tracepoint, kprobe attachment in the system.
|
|
|
|
Output will start with process id and file descriptor in that process,
|
|
followed by bpf program id, attachment information, and attachment point.
|
|
The attachment point for raw_tracepoint/tracepoint is the trace probe name.
|
|
The attachment point for k[ret]probe is either symbol name and offset,
|
|
or a kernel virtual address.
|
|
The attachment point for u[ret]probe is the file name and the file offset.
|
|
|
|
**bpftool perf help**
|
|
Print short help message.
|
|
|
|
OPTIONS
|
|
=======
|
|
.. include:: common_options.rst
|
|
|
|
EXAMPLES
|
|
========
|
|
|
|
| **# bpftool perf**
|
|
|
|
::
|
|
|
|
pid 21711 fd 5: prog_id 5 kprobe func __x64_sys_write offset 0
|
|
pid 21765 fd 5: prog_id 7 kretprobe func __x64_sys_nanosleep offset 0
|
|
pid 21767 fd 5: prog_id 8 tracepoint sys_enter_nanosleep
|
|
pid 21800 fd 5: prog_id 9 uprobe filename /home/yhs/a.out offset 1159
|
|
|
|
|
|
|
| **# bpftool -j perf**
|
|
|
|
::
|
|
|
|
[{"pid":21711,"fd":5,"prog_id":5,"fd_type":"kprobe","func":"__x64_sys_write","offset":0}, \
|
|
{"pid":21765,"fd":5,"prog_id":7,"fd_type":"kretprobe","func":"__x64_sys_nanosleep","offset":0}, \
|
|
{"pid":21767,"fd":5,"prog_id":8,"fd_type":"tracepoint","tracepoint":"sys_enter_nanosleep"}, \
|
|
{"pid":21800,"fd":5,"prog_id":9,"fd_type":"uprobe","filename":"/home/yhs/a.out","offset":1159}]
|