Pull perf/urgent fixes and improvements from Arnaldo Carvalho de Melo: perf python: Arnaldo Carvalho de Melo: - Fix clang detection to strip out options passed in $CC. build: He Zhe: - Normalize gcc parameter when generating arch errno table, fixing the build by removing options from $(CC). Sam Lunt: - Support Python 3.8+ in Makefile. perf report/top: Arnaldo Carvalho de Melo: - Fix title line formatting. perf script: Andreas Gerstmayr: - Fix SEGFAULT when using DWARF mode. - Fix invalid read of directory entry after closedir(), found with valgrind. Hagen Paul Pfeifer: - Introduce --deltatime option. Stephane Eranian: - Allow --symbol to accept hexadecimal addresses. Ian Rogers: - Add -S/--symbols documentation Namhyung Kim: - Add --show-cgroup-events option. perf python: Arnaldo Carvalho de Melo: - Include rwsem.c in the python binding, needed by the cgroups improvements. build-test: Arnaldo Carvalho de Melo: - Honour JOBS to override detection of number of cores perf top: Jin Yao: - Support --group-sort-idx to change the sort order - perf top: Support hotkey to change sort order perf pmu-events x86: Jin Yao: - Use CPU_CLK_UNHALTED.THREAD in Kernel_Utilization metric perf symbols arm64: Kemeng Shi: - Fix arm64 gap between kernel start and module end kernel perf subsystem: Namhyung Kim: - Add PERF_RECORD_CGROUP event and Add PERF_SAMPLE_CGROUP feature, to allow cgroup tracking, saving a link between cgroup path and its id number. perf cgroup: Namhyung Kim: - Maintain cgroup hierarchy. perf report: Namhyung Kim: - Add 'cgroup' sort key. perf record: Namhyung Kim: - Support synthesizing cgroup events for pre-existing cgroups. - Add --all-cgroups option Documentation: Tony Jones: - Update docs regarding kernel/user space unwinding.
Showing the changes to include/uapi/linux (1 of 100 files). Show all
Unified · Split
| @@ -142,8 +142,9 @@ enum perf_event_sample_format { · 141 unmodified lines | |||
| 142 | PERF_SAMPLE_REGS_INTR = 1U << 18, | 142 | PERF_SAMPLE_REGS_INTR = 1U << 18, |
| 143 | PERF_SAMPLE_PHYS_ADDR = 1U << 19, | 143 | PERF_SAMPLE_PHYS_ADDR = 1U << 19, |
| 144 | PERF_SAMPLE_AUX = 1U << 20, | 144 | PERF_SAMPLE_AUX = 1U << 20, |
| 145 | PERF_SAMPLE_CGROUP = 1U << 21, | ||
| 145 | 146 | ||
| 146 | PERF_SAMPLE_MAX = 1U << 21, /* non-ABI */ | 147 | PERF_SAMPLE_MAX = 1U << 22, /* non-ABI */ |
| 147 | 148 | ||
| 148 | __PERF_SAMPLE_CALLCHAIN_EARLY = 1ULL << 63, /* non-ABI; internal use */ | 149 | __PERF_SAMPLE_CALLCHAIN_EARLY = 1ULL << 63, /* non-ABI; internal use */ |
| 149 | }; | 150 | }; |
| @@ -381,7 +382,8 @@ struct perf_event_attr { · 231 unmodified lines | |||
| 381 | ksymbol : 1, /* include ksymbol events */ | 382 | ksymbol : 1, /* include ksymbol events */ |
| 382 | bpf_event : 1, /* include bpf events */ | 383 | bpf_event : 1, /* include bpf events */ |
| 383 | aux_output : 1, /* generate AUX records instead of events */ | 384 | aux_output : 1, /* generate AUX records instead of events */ |
| 384 | __reserved_1 : 32; | 385 | cgroup : 1, /* include cgroup events */ |
| 386 | __reserved_1 : 31; | ||
| 385 | 387 | ||
| 386 | union { | 388 | union { |
| 387 | __u32 wakeup_events; /* wakeup every n events */ | 389 | __u32 wakeup_events; /* wakeup every n events */ |
| @@ -1012,6 +1014,16 @@ enum perf_event_type { · 624 unmodified lines | |||
| 1012 | */ | 1014 | */ |
| 1013 | PERF_RECORD_BPF_EVENT = 18, | 1015 | PERF_RECORD_BPF_EVENT = 18, |
| 1014 | 1016 | ||
| 1017 | /* | ||
| 1018 | * struct { | ||
| 1019 | * struct perf_event_header header; | ||
| 1020 | * u64 id; | ||
| 1021 | * char path[]; | ||
| 1022 | * struct sample_id sample_id; | ||
| 1023 | * }; | ||
| 1024 | */ | ||
| 1025 | PERF_RECORD_CGROUP = 19, | ||
| 1026 | |||
| 1015 | PERF_RECORD_MAX, /* non-ABI */ | 1027 | PERF_RECORD_MAX, /* non-ABI */ |
| 1016 | }; | 1028 | }; |
| 1017 | 1029 | ||