mirror of
https://github.com/torvalds/linux.git
synced 2026-07-28 10:09:10 +02:00
Linux kernel source tree
In pipe mode attr events capture the perf_event_attr. Allow their
dumping as they normally start the file.
Before:
```
$ perf record -o - -a sleep 1 | perf script -D -i -
. ... raw event: size 272 bytes
. 0000: 40 00 00 00 00 00 10 01 00 00 00 00 88 00 00 00 @...............
. 0010: 00 00 00 00 00 00 00 00 a0 0f 00 00 00 00 00 00 ................
. 0020: 87 01 01 00 00 00 00 00 14 00 00 00 00 00 00 00 ................
. 0030: 01 84 05 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
. 0040: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
. 0050: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
. 0060: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
. 0070: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
. 0080: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
. 0090: 91 08 00 00 00 00 00 00 92 08 00 00 00 00 00 00 ................
. 00a0: 93 08 00 00 00 00 00 00 94 08 00 00 00 00 00 00 ................
. 00b0: 95 08 00 00 00 00 00 00 96 08 00 00 00 00 00 00 ................
. 00c0: 97 08 00 00 00 00 00 00 98 08 00 00 00 00 00 00 ................
. 00d0: 99 08 00 00 00 00 00 00 9a 08 00 00 00 00 00 00 ................
. 00e0: 9b 08 00 00 00 00 00 00 9c 08 00 00 00 00 00 00 ................
. 00f0: 9d 08 00 00 00 00 00 00 9e 08 00 00 00 00 00 00 ................
. 0100: 9f 08 00 00 00 00 00 00 a0 08 00 00 00 00 00 00 ................
-1 -1 0 [0x110]: PERF_RECORD_ATTR
0x110@pipe [0x110]: event: 64
...
```
After:
```
$ perf record -o - -a sleep 1 | perf script -D -i -
0@pipe [0x110]: event: 64
.
. ... raw event: size 272 bytes
. 0000: 40 00 00 00 00 00 10 01 00 00 00 00 88 00 00 00 @...............
. 0010: 00 00 00 00 00 00 00 00 a0 0f 00 00 00 00 00 00 ................
. 0020: 87 01 01 00 00 00 00 00 14 00 00 00 00 00 00 00 ................
. 0030: 01 84 05 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
. 0040: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
. 0050: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
. 0060: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
. 0070: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
. 0080: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
. 0090: 5c 08 00 00 00 00 00 00 5d 08 00 00 00 00 00 00 \.......].......
. 00a0: 5e 08 00 00 00 00 00 00 5f 08 00 00 00 00 00 00 ^......._.......
. 00b0: 60 08 00 00 00 00 00 00 61 08 00 00 00 00 00 00 `.......a.......
. 00c0: 62 08 00 00 00 00 00 00 63 08 00 00 00 00 00 00 b.......c.......
. 00d0: 64 08 00 00 00 00 00 00 65 08 00 00 00 00 00 00 d.......e.......
. 00e0: 66 08 00 00 00 00 00 00 67 08 00 00 00 00 00 00 f.......g.......
. 00f0: 68 08 00 00 00 00 00 00 69 08 00 00 00 00 00 00 h.......i.......
. 0100: 6a 08 00 00 00 00 00 00 6b 08 00 00 00 00 00 00 j.......k.......
-1 -1 0 [0x110]: PERF_RECORD_ATTR, type = 0 (PERF_TYPE_HARDWARE), size = 136, config = 0 (PERF_COUNT_HW_CPU_CYCLES), { sample_period, sample_freq } = 4000, sample_type = IP|TID|TIME|CPU|PERIOD|IDENTIFIER, read_format = ID|LOST, disabled = 1, freq = 1, precise_ip = 3, sample_id_all = 1
0x110@pipe [0x110]: event: 64
...
```
Signed-off-by: Ian Rogers <irogers@google.com>
Link: https://lore.kernel.org/r/20250617223356.2752099-4-irogers@google.com
Signed-off-by: Namhyung Kim <namhyung@kernel.org>
|
||
|---|---|---|
| arch | ||
| block | ||
| certs | ||
| crypto | ||
| Documentation | ||
| drivers | ||
| fs | ||
| include | ||
| init | ||
| io_uring | ||
| ipc | ||
| kernel | ||
| lib | ||
| LICENSES | ||
| mm | ||
| net | ||
| rust | ||
| samples | ||
| scripts | ||
| security | ||
| sound | ||
| tools | ||
| usr | ||
| virt | ||
| .clang-format | ||
| .clippy.toml | ||
| .cocciconfig | ||
| .editorconfig | ||
| .get_maintainer.ignore | ||
| .gitattributes | ||
| .gitignore | ||
| .mailmap | ||
| .pylintrc | ||
| .rustfmt.toml | ||
| COPYING | ||
| CREDITS | ||
| Kbuild | ||
| Kconfig | ||
| MAINTAINERS | ||
| Makefile | ||
| README | ||
Linux kernel
============
There are several guides for kernel developers and users. These guides can
be rendered in a number of formats, like HTML and PDF. Please read
Documentation/admin-guide/README.rst first.
In order to build the documentation, use ``make htmldocs`` or
``make pdfdocs``. The formatted documentation can also be read online at:
https://www.kernel.org/doc/html/latest/
There are various text files in the Documentation/ subdirectory,
several of them using the reStructuredText markup notation.
Please read the Documentation/process/changes.rst file, as it contains the
requirements for building and running the kernel, and information about
the problems which may result by upgrading your kernel.