Adrian Hunter
95cae1b570
perf auxtrace: Fix auxtrace queue conflict
...
[ Upstream commit b410ed2a8572d41c68bd9208555610e4b07d0703 ]
The only requirement of an auxtrace queue is that the buffers are in
time order. That is achieved by making separate queues for separate
perf buffer or AUX area buffer mmaps.
That generally means a separate queue per cpu for per-cpu contexts, and
a separate queue per thread for per-task contexts.
When buffers are added to a queue, perf checks that the buffer cpu and
thread id (tid) match the queue cpu and thread id.
However, generally, that need not be true, and perf will queue buffers
correctly anyway, so the check is not needed.
In addition, the check gets erroneously hit when using sample mode to
trace multiple threads.
Consequently, fix that case by removing the check.
Fixes: e502789302 ("perf auxtrace: Add helpers for queuing AUX area tracing data")
Reported-by: Andi Kleen <ak@linux.intel.com>
Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Reviewed-by: Andi Kleen <ak@linux.intel.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Link: http://lore.kernel.org/lkml/20210308151143.18338-1-adrian.hunter@intel.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2021-03-30 14:41:41 +02:00
..
include
perf probe: Support probing on offline cross-arch binary
2016-09-01 12:41:09 -03:00
intel-pt-decoder
perf intel-pt: Fix missing CYC processing in PSB
2021-03-03 17:44:38 +01:00
libunwind
perf unwind: Fix wrongly used regs for aarch64 unwind
2016-06-23 10:30:31 -03:00
scripting-engines
perf scripting perl: Fix compile error with some perl5 versions
2017-07-15 12:16:14 +02:00
alias.c
perf tools: Remove needless includes from cache.h
2016-07-12 15:19:58 -03:00
annotate.c
perf annotate: Use asprintf when formatting objdump command line
2020-07-31 16:44:07 +02:00
annotate.h
perf annotate: Pass the symbol's map/dso to the instruction parsers
2016-09-20 12:28:29 -03:00
auxtrace.c
perf auxtrace: Fix auxtrace queue conflict
2021-03-30 14:41:41 +02:00
auxtrace.h
perf auxtrace: Define auxtrace record alignment
2019-03-23 13:19:53 +01:00
block-range.c
perf annotate: Add branch stack / basic block
2016-09-08 13:44:03 -03:00
block-range.h
perf annotate: Add branch stack / basic block
2016-09-08 13:44:03 -03:00
bpf-loader.c
perf bpf: Fix typo: "ehough" -> "enough"
2016-08-23 17:06:39 -03:00
bpf-loader.h
perf bpf: Rename bpf__foreach_tev() to bpf__foreach_event()
2016-07-13 23:09:03 -03:00
bpf-prologue.c
perf bpf: Add prologue for BPF programs for fetching arguments
2015-11-18 17:51:04 -03:00
bpf-prologue.h
perf bpf: Add prologue for BPF programs for fetching arguments
2015-11-18 17:51:04 -03:00
Build
perf jit: Enable jitdump support without dwarf
2017-01-26 08:24:36 +01:00
build-id.c
perf build-id: Fix memory leak in print_sdt_events()
2019-04-20 09:07:48 +02:00
build-id.h
perf probe: Support @BUILDID or @FILE suffix for SDT events
2016-07-13 23:09:08 -03:00
cache.h
perf tools: Remove needless includes from cache.h
2016-07-12 15:19:58 -03:00
call-path.c
perf tools: Refactor code to move call path handling out of thread-stack
2016-05-06 13:00:43 -03:00
call-path.h
perf tools: Refactor code to move call path handling out of thread-stack
2016-05-06 13:00:43 -03:00
callchain.c
perf callchain: Reference count maps
2017-03-12 06:41:47 +01:00
callchain.h
perf callchain: Reference count maps
2017-03-12 06:41:47 +01:00
cgroup.c
perf tools: Fix snprint warnings for gcc 8
2020-07-31 16:44:07 +02:00
cgroup.h
perf tools: Remove needless 'extern' from function prototypes
2016-03-23 15:06:35 -03:00
cloexec.c
perf tools: Introduce weak alternative to sched_getcpu()
2016-07-12 15:20:34 -03:00
cloexec.h
perf tools: Remove needless 'extern' from function prototypes
2016-03-23 15:06:35 -03:00
color.c
perf tools: Uninline scnprintf() and vscnprint()
2016-07-12 15:20:24 -03:00
color.h
comm.c
comm.h
config.c
perf config: Fix a memory leak in collect_config()
2019-04-20 09:07:48 +02:00
config.h
perf config: Introduce new init() and exit()
2016-06-23 17:20:04 -03:00
counts.c
counts.h
cpumap.c
perf tools: Handle TOPOLOGY headers with no CPU
2019-03-13 14:04:55 -07:00
cpumap.h
perf cpu_map: Add more helpers
2016-07-18 19:42:47 -03:00
cs-etm.h
perf tools: Add coresight etm PMU record capabilities
2016-09-22 12:19:40 -03:00
ctype.c
perf ui/stdio: Align column header for hierarchy output
2016-02-24 20:21:12 -03:00
data-convert-bt.c
perf data: Fix 'strncat may truncate' build failure with recent gcc
2019-06-22 08:17:23 +02:00
data-convert-bt.h
perf data ctf: Pass convert options through opts structure
2016-06-28 10:54:55 -03:00
data-convert.h
perf data ctf: Add 'all' option
2016-06-28 10:54:56 -03:00
data.c
tools: Introduce str_error_r()
2016-07-12 15:19:47 -03:00
data.h
perf data: Add perf_data_file__switch() helper
2016-04-14 08:57:54 -03:00
db-export.c
perf thread: Adopt get_main_thread from db-export.c
2016-05-30 12:41:43 -03:00
db-export.h
perf script: Add call path id to exported sample in db export
2016-05-06 13:00:53 -03:00
debug.c
tools: Introduce tools/include/linux/time64.h for *SEC_PER_*SEC macros
2016-08-23 15:37:33 -03:00
debug.h
tools: Introduce str_error_r()
2016-07-12 15:19:47 -03:00
demangle-java.c
perf symbols: add Java demangling support
2016-02-05 09:46:45 -03:00
demangle-java.h
perf symbols: add Java demangling support
2016-02-05 09:46:45 -03:00
demangle-rust.c
perf symbols: Add Rust demangling
2016-07-12 16:12:38 -03:00
demangle-rust.h
perf symbols: Add Rust demangling
2016-07-12 16:12:38 -03:00
drv_configs.c
perf pmu: Push configuration down to PMU driver
2016-09-22 12:19:41 -03:00
drv_configs.h
perf pmu: Push configuration down to PMU driver
2016-09-22 12:19:41 -03:00
dso.c
perf symbols: Fix debuginfo search for Ubuntu
2020-06-20 10:24:22 +02:00
dso.h
perf symbols: Fix debuginfo search for Ubuntu
2020-06-20 10:24:22 +02:00
dwarf-aux.c
perf probe: Fix to die_entrypc() returns error correctly
2020-12-02 08:31:28 +01:00
dwarf-aux.h
perf probe: Fix to show function entry line as probe-able
2020-01-04 13:40:28 +01:00
dwarf-regs.c
perf probe: Support probing on offline cross-arch binary
2016-09-01 12:41:09 -03:00
env.c
perf header: Transform nodes string info to struct
2016-07-04 19:39:01 -03:00
env.h
perf header: Transform nodes string info to struct
2016-07-04 19:39:01 -03:00
event.c
perf tools: Fix DSO filtering when not finding a map for a sampled address
2021-03-03 17:44:38 +01:00
event.h
Revert "perf tools: event.h needs asm/perf_regs.h"
2016-07-25 11:58:56 -03:00
evlist.c
perf tools: Experiment with cppcheck
2016-10-03 11:24:13 -03:00
evlist.h
perf evlist: Make {pause,resume} internal helpers
2016-07-15 17:27:50 -03:00
evsel.c
perf evsel: Make perf_evsel__name() accept a NULL argument
2019-08-04 09:33:20 +02:00
evsel.h
perf evsel: Add support for address filters
2016-09-29 11:16:59 -03:00
evsel_fprintf.c
perf script: Fix vanished idle symbols
2016-09-29 11:17:00 -03:00
find-vdso-map.c
genelf.c
perf jit: Enable jitdump support without dwarf
2017-01-26 08:24:36 +01:00
genelf.h
perf jit: Enable jitdump support without dwarf
2017-01-26 08:24:36 +01:00
genelf_debug.c
perf jit: add source line info support
2016-02-05 12:33:09 -03:00
generate-cmdlist.sh
perf tools: Do not show trace command if it's not compiled in
2016-01-08 12:46:17 -03:00
group.h
perf stat: Basic support for TopDown in perf stat
2016-06-06 17:04:15 -03:00
header.c
perf tools: Fix segfault in cpu_cache_level__read()
2019-10-17 13:42:15 -07:00
header.h
perf pmu: Use pmu_events table to create aliases
2016-10-03 19:58:00 -03:00
help-unknown-cmd.c
perf tools: Uninline scnprintf() and vscnprint()
2016-07-12 15:20:24 -03:00
help-unknown-cmd.h
perf tools: Move help_unknown_cmd() to its own file
2015-12-14 12:30:37 -03:00
hist.c
perf tools: Fix time sorting
2019-11-12 19:15:43 +01:00
hist.h
perf hists: Fix variable name's inconsistency in hists__for_each() macro
2020-01-23 08:19:40 +01:00
intel-bts.c
perf symbols: Remove symbol_filter_t machinery
2016-09-05 11:14:50 -03:00
intel-bts.h
intel-pt.c
perf intel-pt: Fix "context_switch event has no tid" error
2020-10-29 09:05:38 +01:00
intel-pt.h
perf intel-pt: Record address filter in AUXTRACE_INFO event
2016-09-29 11:17:05 -03:00
intlist.c
intlist.h
perf intlist: Rename for_each() macros to for_each_entry()
2016-06-23 11:39:19 -03:00
jit.h
perf tools: Remove needless 'extern' from function prototypes
2016-03-23 15:06:35 -03:00
jitdump.c
perf inject jit: Fix JIT_CODE_MOVE filename
2019-10-17 13:42:43 -07:00
jitdump.h
perf jit: Add support for using TSC as a timestamp
2016-04-01 18:42:55 -03:00
kvm-stat.h
perf kvm/powerpc: Port perf kvm stat to powerpc
2016-01-29 17:49:54 -03:00
levenshtein.c
perf tools: Remove needless includes from cache.h
2016-07-12 15:19:58 -03:00
levenshtein.h
llvm-utils.c
perf llvm: Don't access out-of-scope array
2019-10-17 13:42:42 -07:00
llvm-utils.h
perf llvm: Allow dump llvm output object file using llvm.dump-obj
2016-06-21 13:18:34 -03:00
lzma.c
perf tools: Fix error handling of lzma decompression
2016-08-24 11:20:58 -03:00
machine.c
perf record: Fix module size on s390
2019-08-25 10:51:21 +02:00
machine.h
perf record: Fix module size on s390
2019-08-25 10:51:21 +02:00
map.c
perf map: Fix off by one in strncpy() size argument
2020-04-02 17:20:41 +02:00
map.h
perf symbols: Remove symbol_filter_t machinery
2016-09-05 11:14:50 -03:00
mem-events.c
perf mem: Add --ldlat option
2016-06-15 10:35:27 -03:00
mem-events.h
perf mem: Add --ldlat option
2016-06-15 10:35:27 -03:00
ordered-events.c
perf inject: Copy events when reordering events in pipe mode
2018-03-22 09:17:51 +01:00
ordered-events.h
perf ordered_events: Introduce reinit()
2016-04-14 08:57:54 -03:00
parse-branch-options.c
perf subcmd: Create subcmd library
2015-12-17 14:27:14 -03:00
parse-branch-options.h
parse-events.c
perf tools: Fix snprint warnings for gcc 8
2020-07-31 16:44:07 +02:00
parse-events.h
perf list: Support long jevents descriptions
2016-10-03 21:35:47 -03:00
parse-events.l
perf jevents: Handle events including .c and .o
2016-10-17 11:24:18 -03:00
parse-events.y
perf tools: Fix pmu events parsing rule
2018-08-03 07:55:13 +02:00
parse-regs-options.c
perf record: Fix memory leak when using '--user-regs=?' to list registers
2020-12-29 13:45:01 +01:00
parse-regs-options.h
path.c
perf tools: Remove needless includes from cache.h
2016-07-12 15:19:58 -03:00
PERF-VERSION-GEN
perf_regs.c
perf tools: Fix perf regs mask generation
2016-05-11 21:54:06 +10:00
perf_regs.h
perf regs: Make perf_reg_name() return "unknown" instead of NULL
2020-01-04 13:41:02 +01:00
pmu.c
perf test: Free formats for perf pmu parse test
2020-09-23 08:46:15 +02:00
pmu.h
perf test: Free formats for perf pmu parse test
2020-09-23 08:46:15 +02:00
pmu.l
pmu.y
probe-event.c
perf probe: Fix to check blacklist address correctly
2020-07-31 16:44:07 +02:00
probe-event.h
perf probe: Add helper function to check if probe with variable
2016-09-01 12:42:25 -03:00
probe-file.c
perf probe: Fix unchecked usage of strncpy()
2019-02-12 19:44:55 +01:00
probe-file.h
perf probe: Add supported for type casting by the running kernel
2016-08-23 17:03:31 -03:00
probe-finder.c
perf probe: Fix memory leakage when the probe point is not found
2020-08-26 10:29:03 +02:00
probe-finder.h
perf probe: Fix to probe on gcc generated functions in modules
2017-07-05 14:40:27 +02:00
pstack.c
pstack.h
python-ext-sources
tools lib api: Add str_error_c to libapi
2016-07-27 17:16:43 -03:00
python.c
perf tools: Make is_printable_array global
2016-07-18 19:49:47 -03:00
quote.c
perf quote: Disentangle headers
2016-07-12 15:19:55 -03:00
quote.h
perf quote: Disentangle headers
2016-07-12 15:19:55 -03:00
rb_resort.h
perf rb_resort: Rename for_each() macros to for_each_entry()
2016-06-23 11:35:07 -03:00
rblist.c
rblist.h
record.c
perf evlist: Rename for_each() macros to for_each_entry()
2016-06-23 11:26:15 -03:00
session.c
perf tools: Add missing swap for ino_generation
2020-11-18 18:26:23 +01:00
session.h
perf evsel: Move some methods from session.[ch] to evsel.[ch]
2016-04-13 10:11:52 -03:00
setup.py
perf tools: Fix python extension build
2016-02-29 11:18:25 -03:00
sort.c
perf util: Fix memory leak of prefix_if_not_in
2020-10-01 20:40:14 +02:00
sort.h
perf tools: Make several sorting functions global
2016-09-22 13:08:57 -03:00
srcline.c
perf: Make perf able to build with latest libbfd
2020-07-31 16:44:07 +02:00
stat-shadow.c
perf stat: Add computation of TopDown formulas
2016-06-06 17:04:16 -03:00
stat.c
perf stat: Zero all the 'ena' and 'run' array slot stats for interval mode
2020-07-22 09:10:51 +02:00
stat.h
perf stat: Reset previous counts on repeat with interval
2019-10-17 13:42:17 -07:00
strbuf.c
perf strbuf: Remove redundant va_end() in strbuf_addv()
2020-01-04 13:41:05 +01:00
strbuf.h
perf tools: Experiment with cppcheck
2016-10-03 11:24:13 -03:00
strfilter.c
tools strfilter: Use __fallthrough
2017-07-15 12:16:12 +02:00
strfilter.h
string.c
tools string: Use __fallthrough in perf_atoll()
2017-07-15 12:16:12 +02:00
strlist.c
perf tools: Add file_only config option to strlist
2016-01-12 12:42:07 -03:00
strlist.h
perf tools: Rename strlist_for_each() macros to for_each_entry()
2016-06-23 11:35:01 -03:00
svghelper.c
perf svghelper: Fix unchecked usage of strncpy()
2019-01-26 09:38:34 +01:00
svghelper.h
perf tools: Remove needless 'extern' from function prototypes
2016-03-23 15:06:35 -03:00
symbol-elf.c
perf kcore_copy: Fix module map when there are no modules loaded
2020-10-01 20:40:14 +02:00
symbol-minimal.c
perf symbols: Remove symbol_filter_t machinery
2016-09-05 11:14:50 -03:00
symbol.c
perf symbols: Fix debuginfo search for Ubuntu
2020-06-20 10:24:22 +02:00
symbol.h
perf record: Fix wrong size in perf_record_mmap for last kernel module
2019-08-25 10:51:20 +02:00
symbol_fprintf.c
perf symbols: Move fprintf routines to separate object file
2016-04-14 19:46:53 -03:00
syscalltbl.c
perf tools: Build syscall table .c header from kernel's syscall_64.tbl
2016-04-08 09:58:14 -03:00
syscalltbl.h
perf tools: Allow generating per-arch syscall table arrays
2016-04-08 09:58:14 -03:00
target.c
perf target: str_error_r() always returns the buffer it receives
2016-07-29 11:54:35 -03:00
target.h
term.c
perf tools: Move term functions out of util.c
2015-12-09 13:42:02 -03:00
term.h
perf tools: Move term functions out of util.c
2015-12-09 13:42:02 -03:00
thread-stack.c
perf script: Add callindent option
2016-06-23 17:04:26 -03:00
thread-stack.h
perf script: Add callindent option
2016-06-23 17:04:26 -03:00
thread.c
perf db-export: Fix thread__exec_comm()
2019-08-25 10:51:20 +02:00
thread.h
perf unwind: Move unwind__prepare_access from thread_new into thread__insert_map
2016-06-07 12:08:52 -03:00
thread_map.c
perf thread_map: Correctly size buffer used with dirent->dt_name
2017-07-15 12:16:13 +02:00
thread_map.h
perf thread_map: Make new_by_tid_str constructor public
2016-04-13 10:11:51 -03:00
tool.h
perf tools: Add time conversion event
2016-03-31 10:52:24 -03:00
top.c
top.h
perf top: Use machine->kptr_restrict_warned
2016-05-20 11:43:55 -03:00
trace-event-info.c
perf tools: Cleanup trace-event-info 'tdata' leak
2018-11-13 11:16:49 -08:00
trace-event-parse.c
irq_poll: make blk-iopoll available outside the block layer
2015-12-11 11:52:24 -08:00
trace-event-read.c
perf tools: Free temporary 'sys' string in read_event_files()
2018-11-13 11:16:49 -08:00
trace-event-scripting.c
perf scripting: Avoid leaking the scripting_context variable
2017-01-26 08:24:36 +01:00
trace-event.c
perf tools: Introduce trace_event__tp_format_id()
2016-07-12 16:14:52 -03:00
trace-event.h
perf tools: Introduce trace_event__tp_format_id()
2016-07-12 16:14:52 -03:00
trigger.h
perf tools: Fix trigger class trigger_on()
2018-03-18 11:18:50 +01:00
tsc.c
perf tools: Use 64-bit shifts with (TSC) time conversion
2016-03-08 10:11:18 +01:00
tsc.h
perf jit: Add support for using TSC as a timestamp
2016-04-01 18:42:55 -03:00
unwind-libdw.c
perf report: Include partial stacks unwound with libdw
2019-02-20 10:18:30 +01:00
unwind-libdw.h
perf callchain: Add order support for libdw DWARF unwinder
2015-11-23 18:31:13 -03:00
unwind-libunwind-local.c
perf report: Fix off-by-one for non-activation frames
2018-04-13 19:48:05 +02:00
unwind-libunwind.c
perf unwind: Add initialized arg into unwind__prepare_access
2016-07-04 20:27:12 -03:00
unwind.h
perf unwind: Add initialized arg into unwind__prepare_access
2016-07-04 20:27:12 -03:00
usage.c
perf tools: Simplify die() mechanism
2016-03-23 12:32:31 -03:00
util.c
perf tools: Fix copyfile_offset update of output offset
2018-04-13 19:48:31 +02:00
util.h
perf tools: No need to include bitops.h in util.h
2019-05-31 06:48:13 -07:00
values.c
values.h
vdso.c
perf tools: Find right DSO taking into account if binary is 32 or 64-bit
2016-06-23 10:25:58 -03:00
vdso.h
xyarray.c
xyarray.h
zlib.c