linux/tools/perf/util
Adrian Hunter d58b3f7e70 perf auxtrace: Automatically group aux-output events
aux-output events need to have an AUX area event as the group leader.
However, grouping events does not allow the AUX area event to be given
an address filter because the --filter option must come after the event,
which conflicts with the grouping syntax.

To allow filtering in that case, automatically create a group since that
is the requirement anyway.

Example: (requires Intel Tremont)

  perf record -c 500 -e 'intel_pt//u' --filter 'filter main @ /bin/ls' -e 'cycles/aux-output/pp' ls

Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Acked-by: Jiri Olsa <jolsa@redhat.com>
Link: http://lore.kernel.org/lkml/20210121140418.14705-1-adrian.hunter@intel.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
2021-02-18 16:11:19 -03:00
..
arm-spe-decoder perf arm-spe: Store operation type in packet 2021-02-12 17:43:24 -03:00
bpf_skel perf stat: Enable counting events for BPF programs 2021-01-20 14:25:28 -03:00
c++
cs-etm-decoder perf cs-etm: Update ARM's CoreSight hardware tracing OpenCSD library to v1.0.0 2021-01-20 14:34:20 -03:00
include tools arch: Update arch/x86/lib/mem{cpy,set}_64.S copies used in 'perf bench mem memcpy' 2020-11-12 17:55:41 -03:00
intel-pt-decoder perf intel-pt: Add PSB events 2021-02-18 16:04:10 -03:00
libunwind
scripting-engines perf scripting python: Avoid declaring function pointers with a visibility attribute 2020-11-03 08:32:43 -03:00
affinity.c
affinity.h
annotate.c perf annotate: Fix jump parsing for C++ code. 2021-02-11 18:23:53 -03:00
annotate.h perf annotate: Fix jump parsing for C++ code. 2021-02-11 18:23:53 -03:00
archinsn.h
arm-spe.c perf arm-spe: Set sample's data source field 2021-02-16 11:52:00 -03:00
arm-spe.h
auxtrace.c perf auxtrace: Automatically group aux-output events 2021-02-18 16:11:19 -03:00
auxtrace.h perf auxtrace: Automatically group aux-output events 2021-02-18 16:11:19 -03:00
block-info.c
block-info.h
block-range.c
block-range.h
bpf-event.c perf evlist: Use the right prefix for 'struct evlist' sideband thread methods 2020-11-30 09:40:10 -03:00
bpf-event.h
bpf-loader.c perf evlist: Use the right prefix for 'struct evlist' 'find' methods 2020-11-30 09:48:07 -03:00
bpf-loader.h perf bpf: Enclose libbpf.h include within HAVE_LIBBPF_SUPPORT 2020-11-04 09:42:40 -03:00
bpf-prologue.c
bpf-prologue.h
bpf_counter.c perf stat: Enable counting events for BPF programs 2021-01-20 14:25:28 -03:00
bpf_counter.h perf stat: Enable counting events for BPF programs 2021-01-20 14:25:28 -03:00
bpf_map.c
bpf_map.h
branch.c
branch.h
Build perf tools: Add OCaml demangling 2021-02-17 15:15:06 -03:00
build-id.c perf build-id: Add build_id_cache__add function 2020-11-27 08:37:29 -03:00
build-id.h perf build-id: Add build_id_cache__add function 2020-11-27 08:37:29 -03:00
cache.h
cacheline.c
cacheline.h
call-path.c
call-path.h
callchain.c perf streams: Report hot streams 2020-10-14 13:34:26 -03:00
callchain.h perf streams: Report hot streams 2020-10-14 13:34:26 -03:00
cap.c
cap.h
cgroup.c perf stat: Use nftw() instead of ftw() 2021-02-08 16:39:14 -03:00
cgroup.h perf tools: Allow creation of cgroup without open 2020-09-28 09:18:06 -03:00
clockid.c perf tools: Add clockid_name function 2020-08-06 09:33:57 -03:00
clockid.h perf tools: Add clockid_name function 2020-08-06 09:33:57 -03:00
cloexec.c
cloexec.h
color.c
color.h
color_config.c
comm.c
comm.h
compress.h
config.c perf config: Make perf_config_global() global 2021-01-20 14:34:21 -03:00
config.h perf config: Make perf_config_global() global 2021-01-20 14:34:21 -03:00
copyfile.c
copyfile.h
counts.c
counts.h
cpu-set-sched.h
cpumap.c perf stat aggregation: Add separate thread member 2020-12-24 10:05:28 -03:00
cpumap.h perf stat aggregation: Add separate thread member 2020-12-24 10:05:28 -03:00
cputopo.c
cputopo.h
cs-etm.c perf cs-etm: Fix corrupt data after perf inject from 2020-09-01 12:15:52 -03:00
cs-etm.h
data-convert-bt.c perf tools: Replace lkml.org links with lore 2021-02-11 12:54:27 -03:00
data-convert-bt.h
data-convert.h perf data: Add support to store time of day in CTF data conversion 2020-08-06 09:43:37 -03:00
data.c perf data: Add is_perf_data function 2020-11-27 08:37:15 -03:00
data.h perf data: Add is_perf_data function 2020-11-27 08:37:15 -03:00
db-export.c
db-export.h
debug.c perf debug: Add debug_set_display_time function 2021-01-20 14:34:20 -03:00
debug.h perf debug: Add debug_set_display_time function 2021-01-20 14:34:20 -03:00
demangle-java.c
demangle-java.h
demangle-ocaml.c perf tools: Add OCaml demangling 2021-02-17 15:15:06 -03:00
demangle-ocaml.h perf tools: Add OCaml demangling 2021-02-17 15:15:06 -03:00
demangle-rust.c
demangle-rust.h
dso.c perf tools: Add filename__decompress function 2020-11-27 08:36:53 -03:00
dso.h perf tools: Add filename__decompress function 2020-11-27 08:36:53 -03:00
dsos.c perf tools: Align buildid list output for short build ids 2020-10-14 11:28:52 -03:00
dsos.h
dump-insn.c
dump-insn.h
dwarf-aux.c perf probe: Change function definition check due to broken DWARF 2020-11-27 14:36:15 -03:00
dwarf-aux.h
dwarf-regs.c
env.c perf env: Conditionally compile BPF support code on having HAVE_LIBBPF_SUPPORT 2020-11-04 09:42:41 -03:00
env.h perf env: Conditionally compile BPF support code on having HAVE_LIBBPF_SUPPORT 2020-11-04 09:42:41 -03:00
event.c perf script: Support filtering by hex address 2021-02-08 17:09:11 -03:00
event.h perf tools: Support arch specific PERF_SAMPLE_WEIGHT_STRUCT processing 2021-02-18 16:07:06 -03:00
events_stats.h
evlist.c perf record: Fix continue profiling after draining the buffer 2021-02-18 13:30:09 -03:00
evlist.h perf record: Fix continue profiling after draining the buffer 2021-02-18 13:30:09 -03:00
evsel.c perf tools: Support arch specific PERF_SAMPLE_WEIGHT_STRUCT processing 2021-02-18 16:07:06 -03:00
evsel.h perf tools: Support PERF_SAMPLE_WEIGHT_STRUCT 2021-02-08 16:25:00 -03:00
evsel_config.h
evsel_fprintf.c perf tools: Add 'evlist' control command 2021-01-20 14:34:21 -03:00
evsel_fprintf.h
evswitch.c perf evlist: Use the right prefix for 'struct evlist' 'find' methods 2020-11-30 09:48:07 -03:00
evswitch.h
expr.c perf expr: Force encapsulation on expr_id_data 2020-11-16 14:09:18 -03:00
expr.h perf expr: Force encapsulation on expr_id_data 2020-11-16 14:09:18 -03:00
expr.l perf expr: Add < and > operators 2020-06-22 16:28:09 -03:00
expr.y perf expr: Force encapsulation on expr_id_data 2020-11-16 14:09:18 -03:00
find-map.c
fncache.c
fncache.h
genelf.c
genelf.h
genelf_debug.c
generate-cmdlist.sh
get_current_dir_name.c
get_current_dir_name.h
hashmap.c perf tools: Update copy of libbpf's hashmap.c 2020-11-03 08:26:55 -03:00
hashmap.h perf tools: Update copy of libbpf's hashmap.c 2020-11-27 14:19:33 -03:00
header.c perf tools: Simplify the calculation of variables 2021-02-18 10:13:37 -03:00
header.h perf header: Store clock references for -k/--clockid option 2020-08-06 09:35:06 -03:00
help-unknown-cmd.c
help-unknown-cmd.h
hist.c perf report: Support instruction latency 2021-02-08 16:25:00 -03:00
hist.h perf report: Support instruction latency 2021-02-08 16:25:00 -03:00
intel-bts.c
intel-bts.h
intel-pt.c perf intel-pt: Add PSB events 2021-02-18 16:04:10 -03:00
intel-pt.h
intlist.c perf intlist: Change 'struct intlist' int member to 'unsigned long' 2021-02-08 17:02:00 -03:00
intlist.h perf intlist: Change 'struct intlist' int member to 'unsigned long' 2021-02-08 17:02:00 -03:00
jit.h perf inject jit: Add namespaces support 2021-02-03 13:10:44 -03:00
jitdump.c perf inject jit: Add namespaces support 2021-02-03 13:10:44 -03:00
jitdump.h
kvm-stat.h
levenshtein.c
levenshtein.h
llvm-utils.c
llvm-utils.h
lzma.c
machine.c Merge remote-tracking branch 'torvalds/master' into perf/core 2021-01-20 14:35:31 -03:00
machine.h perf machine: Add machine__for_each_dso() function 2020-09-17 15:47:12 -03:00
map.c perf tools: Store build id when available in PERF_RECORD_MMAP2 metadata events 2020-12-28 10:01:55 -03:00
map.h perf tools: Store build id when available in PERF_RECORD_MMAP2 metadata events 2020-12-28 10:01:55 -03:00
map_symbol.h perf sort: Add sort option for data page size 2020-12-19 17:52:24 -03:00
maps.h
mem-events.c perf c2c: Support data block and addr block 2021-02-08 16:25:00 -03:00
mem-events.h perf c2c: Support data block and addr block 2021-02-08 16:25:00 -03:00
mem2node.c perf mem2node: Improve warning if detected no memory nodes 2020-11-04 09:42:40 -03:00
mem2node.h
memswap.c
memswap.h
metricgroup.c perf metricgroup: Remove unneeded semicolon 2021-02-17 15:19:59 -03:00
metricgroup.h perf tools: Copy metric events properly when expand cgroups 2020-09-28 09:16:21 -03:00
mmap.c
mmap.h
namespaces.c perf inject jit: Add namespaces support 2021-02-03 13:10:44 -03:00
namespaces.h perf inject jit: Add namespaces support 2021-02-03 13:10:44 -03:00
ordered-events.c
ordered-events.h
parse-branch-options.c
parse-branch-options.h
parse-events.c perf evlist: Use the right prefix for 'struct evlist' evsel list methods 2020-11-30 14:52:44 -03:00
parse-events.h perf parse-events: Reduce casts around bp_addr 2020-09-28 09:22:39 -03:00
parse-events.l perf tools: Support the auxiliary event 2021-02-08 16:25:00 -03:00
parse-events.y perf parse-events: Reduce casts around bp_addr 2020-09-28 09:22:39 -03:00
parse-regs-options.c perf record: Fix memory leak when using '--user-regs=?' to list registers 2020-12-17 14:36:16 -03:00
parse-regs-options.h
parse-sublevel-options.c perf tools: Add general function to parse sublevel options 2020-08-14 09:15:47 -03:00
parse-sublevel-options.h perf tools: Add general function to parse sublevel options 2020-08-14 09:15:47 -03:00
path.c
path.h
perf-hooks-list.h
perf-hooks.c
perf-hooks.h
PERF-VERSION-GEN
perf_api_probe.c perf record: Add --buildid-mmap option to enable PERF_RECORD_MMAP2's build id 2020-12-28 11:35:57 -03:00
perf_api_probe.h perf record: Add --buildid-mmap option to enable PERF_RECORD_MMAP2's build id 2020-12-28 11:35:57 -03:00
perf_event_attr_fprintf.c perf tools: Support PERF_SAMPLE_WEIGHT_STRUCT 2021-02-08 16:25:00 -03:00
perf_regs.c
perf_regs.h
pfm.c
pfm.h
pmu.c perf pmu: Add pmu_add_sys_aliases() 2020-12-17 14:36:17 -03:00
pmu.h perf pmu: Add pmu_add_sys_aliases() 2020-12-17 14:36:17 -03:00
pmu.l
pmu.y
print_binary.c perf python scripting: Fix printable strings in python3 scripts 2020-10-01 12:10:56 -03:00
print_binary.h
probe-event.c Merge branch 'perf/urgent' into perf/core 2021-02-16 11:52:16 -03:00
probe-event.h
probe-file.c perf probe: Fixup Arm64 SDT arguments 2020-12-28 09:53:28 -03:00
probe-file.h
probe-finder.c perf probe: Add protection to avoid endless loop 2021-02-08 16:25:00 -03:00
probe-finder.h perf probe: Fall back to debuginfod query if debuginfo and source not found locally 2020-09-18 09:20:47 -03:00
pstack.c
pstack.h
python-ext-sources perf tools: Add 'evlist' control command 2021-01-20 14:34:21 -03:00
python.c perf stat: Enable counting events for BPF programs 2021-01-20 14:25:28 -03:00
rb_resort.h
rblist.c
rblist.h
record.c perf tools: Support the auxiliary event 2021-02-08 16:25:00 -03:00
record.h perf record: Add support for PERF_SAMPLE_CODE_PAGE_SIZE 2021-01-20 14:34:20 -03:00
rlimit.c
rlimit.h
rwsem.c
rwsem.h
s390-cpumcf-kernel.h
s390-cpumsf-kernel.h
s390-cpumsf.c perf evlist: Use the right prefix for 'struct evlist' sample id lookup methods 2020-11-30 14:17:57 -03:00
s390-cpumsf.h
s390-sample-raw.c perf evlist: Use the right prefix for 'struct evlist' raw samples methods 2020-11-30 15:15:30 -03:00
sample-raw.c perf evlist: Use the right prefix for 'struct evlist' raw samples methods 2020-11-30 15:15:30 -03:00
sample-raw.h perf evlist: Use the right prefix for 'struct evlist' raw samples methods 2020-11-30 15:15:30 -03:00
session.c perf report: Support instruction latency 2021-02-08 16:25:00 -03:00
session.h
setns.c
setup.py perf tools: Add 'evlist' control command 2021-01-20 14:34:21 -03:00
sideband_evlist.c perf evlist: Use the right prefix for 'struct evlist' create maps methods 2020-11-30 14:56:52 -03:00
smt.c
smt.h
sort.c perf report: Support instruction latency 2021-02-08 16:25:00 -03:00
sort.h perf report: Support instruction latency 2021-02-08 16:25:00 -03:00
spark.c
spark.h
srccode.c
srccode.h
srcline.c
srcline.h
stat-display.c perf stat: Enable counting events for BPF programs 2021-01-20 14:25:28 -03:00
stat-shadow.c perf stat: Support L2 Topdown events 2021-02-08 16:25:00 -03:00
stat.c perf stat: Support L2 Topdown events 2021-02-08 16:25:00 -03:00
stat.h perf stat: Support L2 Topdown events 2021-02-08 16:25:00 -03:00
strbuf.c
strbuf.h
stream.c perf streams: Report hot streams 2020-10-14 13:34:26 -03:00
stream.h perf streams: Report hot streams 2020-10-14 13:34:26 -03:00
strfilter.c
strfilter.h
string.c perf tools: Add OCaml demangling 2021-02-17 15:15:06 -03:00
string2.h perf tools: Add OCaml demangling 2021-02-17 15:15:06 -03:00
strlist.c
strlist.h
svghelper.c
svghelper.h
symbol-elf.c perf tools: Add OCaml demangling 2021-02-17 15:15:06 -03:00
symbol-minimal.c perf tools: Pass build_id object to dso__set_build_id() 2020-10-14 08:46:42 -03:00
symbol.c Merge branch 'perf/urgent' into perf/core 2021-02-16 11:52:16 -03:00
symbol.h perf tools: Fix crash with non-jited bpf progs 2020-11-03 08:30:34 -03:00
symbol_conf.h perf script: Support filtering by hex address 2021-02-08 17:09:11 -03:00
symbol_fprintf.c
symsrc.h
synthetic-events.c perf tools: Support arch specific PERF_SAMPLE_WEIGHT_STRUCT processing 2021-02-18 16:07:06 -03:00
synthetic-events.h
syscalltbl.c
syscalltbl.h
target.c perf stat: Enable counting events for BPF programs 2021-01-20 14:25:28 -03:00
target.h perf stat: Enable counting events for BPF programs 2021-01-20 14:25:28 -03:00
term.c
term.h
thread-stack.c
thread-stack.h
thread.c
thread.h
thread_map.c
thread_map.h
time-utils.c
time-utils.h
tool.h perf tools: Add support for PERF_RECORD_TEXT_POKE 2020-07-10 08:20:01 -03:00
top.c
top.h
topdown.c perf record: Support sample-read topdown metric group 2020-09-17 15:47:58 -03:00
topdown.h perf record: Support sample-read topdown metric group 2020-09-17 15:47:58 -03:00
trace-event-info.c perf trace-event-info: Rename for_each_event. 2021-02-03 13:13:53 -03:00
trace-event-parse.c
trace-event-read.c
trace-event-scripting.c
trace-event.c
trace-event.h
trigger.h
tsc.c perf tsc: Support cap_user_time_short for event TIME_CONV 2020-09-22 13:46:40 -03:00
tsc.h perf tsc: Calculate timestamp with cap_user_time_short 2020-09-22 13:45:21 -03:00
units.c
units.h
unwind-libdw.c perf unwind: Set userdata for all __report_module() paths 2021-02-18 14:20:32 -03:00
unwind-libdw.h
unwind-libunwind-local.c
unwind-libunwind.c
unwind.h
usage.c
util.c
util.h perf tests: Call test_attr__open() directly 2020-09-10 11:55:37 -03:00
values.c
values.h
vdso.c
vdso.h
zlib.c
zstd.c perf tools: Use %zd for size_t printf formats on 32-bit 2020-09-01 12:15:21 -03:00