linux-xiaomi-chiron/tools/perf/util
Michael Petlan 2870782687 perf header: Fix false warning when there are no duplicate cache entries
Before this patch, perf expected that there might be NPROC*4 unique
cache entries at max, however, it also expected that some of them would
be shared and/or of the same size, thus the final number of entries
would be reduced to be lower than NPROC*4. In case the number of entries
hadn't been reduced (was NPROC*4), the warning was printed.

However, some systems might have unusual cache topology, such as the
following two-processor KVM guest:

	cpu  level  shared_cpu_list  size
	  0     1         0           32K
	  0     1         0           64K
	  0     2         0           512K
	  0     3         0           8192K
	  1     1         1           32K
	  1     1         1           64K
	  1     2         1           512K
	  1     3         1           8192K

This KVM guest has 8 (NPROC*4) unique cache entries, which used to make
perf printing the message, although there actually aren't "way too many
cpu caches".

v2: Removing unused argument.

v3: Unifying the way we obtain number of cpus.

v4: Removed '& UINT_MAX' construct which is redundant.

Signed-off-by: Michael Petlan <mpetlan@redhat.com>
Acked-by: Jiri Olsa <jolsa@redhat.com>
LPU-Reference: 20191208162056.20772-1-mpetlan@redhat.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
2019-12-11 12:28:14 -03:00
..
c++
cs-etm-decoder
include perf bench: Update the copies of x86's mem{cpy,set}_64.S 2019-12-02 11:40:57 -03:00
intel-pt-decoder
libunwind
scripting-engines perf addr_location: Rename al->mg to al->maps 2019-11-26 11:07:46 -03:00
affinity.c perf affinity: Add infrastructure to save/restore affinity 2019-11-28 08:08:38 -03:00
affinity.h perf affinity: Add infrastructure to save/restore affinity 2019-11-28 08:08:38 -03:00
annotate.c perf maps: Rename map_groups.h to maps.h 2019-11-26 11:07:46 -03:00
annotate.h perf annotate: Pass a 'map_symbol' in places receiving a pair of 'map' and 'symbol' pointers 2019-11-12 08:20:53 -03:00
archinsn.h
arm-spe-pkt-decoder.c
arm-spe-pkt-decoder.h
arm-spe.c
arm-spe.h
auxtrace.c perf auxtrace: Add support for queuing AUX area samples 2019-11-22 10:48:13 -03:00
auxtrace.h perf auxtrace: Add support for queuing AUX area samples 2019-11-22 10:48:13 -03:00
block-info.c perf report: Jump to symbol source view from total cycles view 2019-11-19 19:37:04 -03:00
block-info.h perf report: Jump to symbol source view from total cycles view 2019-11-19 19:37:04 -03:00
block-range.c
block-range.h
bpf-event.c perf maps: Merge 'struct maps' with 'struct map_groups' 2019-11-26 11:07:46 -03:00
bpf-event.h
bpf-loader.c
bpf-loader.h
bpf-prologue.c
bpf-prologue.h
bpf_map.c
bpf_map.h
branch.c
branch.h
Build perf affinity: Add infrastructure to save/restore affinity 2019-11-28 08:08:38 -03:00
build-id.c
build-id.h
cache.h
cacheline.c
cacheline.h
call-path.c
call-path.h
callchain.c perf map_symbol: Rename ms->mg to ms->maps 2019-11-26 11:07:46 -03:00
callchain.h perf callchain: Use 'struct map_symbol' in 'struct callchain_cursor_node' 2019-11-12 08:20:53 -03:00
cap.c
cap.h
cgroup.c
cgroup.h
cloexec.c
cloexec.h
color.c
color.h
color_config.c
comm.c
comm.h
compress.h
config.c
config.h
copyfile.c
copyfile.h
counts.c
counts.h
cpu-set-sched.h
cpumap.c
cpumap.h perf evsel: Add iterator to iterate over events ordered by CPU 2019-11-29 12:20:45 -03:00
cputopo.c
cputopo.h
cs-etm.c perf maps: Merge 'struct maps' with 'struct map_groups' 2019-11-26 11:07:46 -03:00
cs-etm.h
data-convert-bt.c
data-convert-bt.h
data-convert.h
data.c
data.h
db-export.c perf addr_location: Rename al->mg to al->maps 2019-11-26 11:07:46 -03:00
db-export.h
debug.c perf tool: Provide an option to print perf_event_open args and return value 2019-11-12 08:32:27 -03:00
debug.h perf tool: Provide an option to print perf_event_open args and return value 2019-11-12 08:32:27 -03:00
demangle-java.c
demangle-java.h
demangle-rust.c
demangle-rust.h
dso.c perf dso: Move dso_id from 'struct map' to 'struct dso' 2019-11-19 19:12:26 -03:00
dso.h perf dso: Move dso_id from 'struct map' to 'struct dso' 2019-11-19 19:12:26 -03:00
dsos.c perf dso: Move dso_id from 'struct map' to 'struct dso' 2019-11-19 19:12:26 -03:00
dsos.h perf dso: Move dso_id from 'struct map' to 'struct dso' 2019-11-19 19:12:26 -03:00
dump-insn.c
dump-insn.h
dwarf-aux.c perf probe: Show correct statement line number by perf probe -l 2019-11-18 18:56:27 -03:00
dwarf-aux.h
dwarf-regs.c
env.c
env.h
event.c perf maps: Rename 'mg' variables to 'maps' 2019-11-26 11:07:46 -03:00
event.h perf tools: Add kernel AUX area sampling definitions 2019-11-21 10:54:20 -03:00
events_stats.h
evlist.c perf stat: Use affinity for enabling/disabling events 2019-11-29 12:20:45 -03:00
evlist.h perf stat: Use affinity for opening events 2019-11-29 12:20:45 -03:00
evsel.c perf evsel: Add functions to enable/disable for a specific CPU 2019-11-29 12:20:45 -03:00
evsel.h perf evsel: Add functions to enable/disable for a specific CPU 2019-11-29 12:20:45 -03:00
evsel_config.h perf pmu: When using default config, record which bits of config were changed by the user 2019-11-22 10:48:13 -03:00
evsel_fprintf.c perf callchain: Use 'struct map_symbol' in 'struct callchain_cursor_node' 2019-11-12 08:20:53 -03:00
evsel_fprintf.h
evswitch.c
evswitch.h
expr.h
expr.y
find-map.c
fncache.c perf pmu: Use file system cache to optimize sysfs access 2019-11-28 08:08:38 -03:00
fncache.h perf pmu: Use file system cache to optimize sysfs access 2019-11-28 08:08:38 -03:00
genelf.c perf jit: Move test functionality in to a test 2019-11-29 12:20:45 -03:00
genelf.h
genelf_debug.c
generate-cmdlist.sh
get_current_dir_name.c
get_current_dir_name.h
group.h
header.c perf header: Fix false warning when there are no duplicate cache entries 2019-12-11 12:28:14 -03:00
header.h
help-unknown-cmd.c
help-unknown-cmd.h
hist.c perf map_symbol: Rename ms->mg to ms->maps 2019-11-26 11:07:46 -03:00
hist.h perf report: Jump to symbol source view from total cycles view 2019-11-19 19:37:04 -03:00
intel-bts.c
intel-bts.h
intel-pt.c perf maps: Merge 'struct maps' with 'struct map_groups' 2019-11-26 11:07:46 -03:00
intel-pt.h
intlist.c
intlist.h
jit.h
jitdump.c
jitdump.h
kvm-stat.h
levenshtein.c
levenshtein.h
llvm-utils.c
llvm-utils.h
lzma.c
machine.c perf machine: Fill map_symbol->maps in append_inlines() to fix segfault 2019-11-29 16:11:06 -03:00
machine.h perf maps: Rename map_groups.h to maps.h 2019-11-26 11:07:46 -03:00
map.c perf maps: Rename 'mg' variables to 'maps' 2019-11-26 11:07:46 -03:00
map.h perf maps: Merge 'struct maps' with 'struct map_groups' 2019-11-26 11:07:46 -03:00
map_symbol.h perf map_symbol: Rename ms->mg to ms->maps 2019-11-26 11:07:46 -03:00
maps.h perf maps: Rename map_groups.h to maps.h 2019-11-26 11:07:46 -03:00
mem-events.c pref tools: Make 'struct addr_map_symbol' contain 'struct map_symbol' 2019-11-12 08:20:53 -03:00
mem-events.h
mem2node.c
mem2node.h
memswap.c
memswap.h
metricgroup.c perf metricgroup: Fix printing event names of metric group with multiple events 2019-12-11 12:28:14 -03:00
metricgroup.h
mmap.c
mmap.h
namespaces.c
namespaces.h
ordered-events.c
ordered-events.h
parse-branch-options.c
parse-branch-options.h
parse-events.c perf parse: Fix potential memory leak when handling tracepoint errors 2019-11-22 10:48:14 -03:00
parse-events.h perf record: Add aux-sample-size config term 2019-11-22 10:48:13 -03:00
parse-events.l perf record: Add aux-sample-size config term 2019-11-22 10:48:13 -03:00
parse-events.y perf parse: Use YYABORT to clear stack after failure, plugging leaks 2019-11-12 08:34:16 -03:00
parse-regs-options.c
parse-regs-options.h
path.c
path.h
perf-hooks-list.h
perf-hooks.c
perf-hooks.h
PERF-VERSION-GEN
perf_event_attr_fprintf.c perf tools: Add kernel AUX area sampling definitions 2019-11-21 10:54:20 -03:00
perf_regs.c
perf_regs.h perf regs: Make perf_reg_name() return "unknown" instead of NULL 2019-11-28 08:08:38 -03:00
pmu.c perf pmu: Use file system cache to optimize sysfs access 2019-11-28 08:08:38 -03:00
pmu.h perf pmu: When using default config, record which bits of config were changed by the user 2019-11-22 10:48:13 -03:00
pmu.l
pmu.y
print_binary.c
print_binary.h
probe-event.c perf maps: Rename map_groups.h to maps.h 2019-11-26 11:07:46 -03:00
probe-event.h perf probe: Trace a magic number if variable is not found 2019-11-18 19:09:23 -03:00
probe-file.c perf probe: Support DW_AT_const_value constant value 2019-11-18 19:08:02 -03:00
probe-file.h perf probe: Support DW_AT_const_value constant value 2019-11-18 19:08:02 -03:00
probe-finder.c perf probe: Fix spelling mistake "addrees" -> "address" 2019-11-22 10:48:14 -03:00
probe-finder.h perf probe: Trace a magic number if variable is not found 2019-11-18 19:09:23 -03:00
pstack.c
pstack.h
python-ext-sources perf affinity: Add infrastructure to save/restore affinity 2019-11-28 08:08:38 -03:00
python.c perf tool: Provide an option to print perf_event_open args and return value 2019-11-12 08:32:27 -03:00
rb_resort.h
rblist.c
rblist.h
record.c perf record: Add a function to test for kernel support for AUX area sampling 2019-11-22 10:43:24 -03:00
record.h perf auxtrace: Add support for AUX area sample recording 2019-11-22 10:48:13 -03:00
rlimit.c
rlimit.h
rwsem.c
rwsem.h
s390-cpumcf-kernel.h
s390-cpumsf-kernel.h
s390-cpumsf.c
s390-cpumsf.h
s390-sample-raw.c
sample-raw.c
sample-raw.h
session.c perf session: Add facility to peek at all events 2019-11-22 10:48:13 -03:00
session.h perf session: Add facility to peek at all events 2019-11-22 10:48:13 -03:00
setns.c
setup.py
smt.c
smt.h
sort.c perf report: Make -F more strict like -s 2019-12-04 12:32:40 -03:00
sort.h
spark.c
spark.h
srccode.c perf pmu: Use file system cache to optimize sysfs access 2019-11-28 08:08:38 -03:00
srccode.h
srcline.c
srcline.h
stat-display.c
stat-shadow.c
stat.c perf stat: Use affinity for opening events 2019-11-29 12:20:45 -03:00
stat.h perf stat: Use affinity for opening events 2019-11-29 12:20:45 -03:00
strbuf.c
strbuf.h
strfilter.c
strfilter.h
string.c
string2.h
strlist.c
strlist.h
svghelper.c
svghelper.h
symbol-elf.c perf maps: Rename map_groups.h to maps.h 2019-11-26 11:07:46 -03:00
symbol-minimal.c
symbol.c perf maps: Rename 'mg' variables to 'maps' 2019-11-26 11:07:46 -03:00
symbol.h perf maps: Rename 'mg' variables to 'maps' 2019-11-26 11:07:46 -03:00
symbol_conf.h perf report: Sort by sampled cycles percent per block for stdio 2019-11-07 10:14:48 -03:00
symbol_fprintf.c
symsrc.h
synthetic-events.c perf maps: Merge 'struct maps' with 'struct map_groups' 2019-11-26 11:07:46 -03:00
synthetic-events.h
syscalltbl.c
syscalltbl.h
target.c
target.h
term.c
term.h
thread-stack.c perf thread: Rename thread->mg to thread->maps 2019-11-26 11:07:46 -03:00
thread-stack.h
thread.c perf thread: Rename thread->mg to thread->maps 2019-11-26 11:07:46 -03:00
thread.h perf thread: Rename thread->mg to thread->maps 2019-11-26 11:07:46 -03:00
thread_map.c
thread_map.h
time-utils.c
time-utils.h
tool.h
top.c
top.h
trace-event-info.c
trace-event-parse.c
trace-event-read.c
trace-event-scripting.c
trace-event.c
trace-event.h
trigger.h
tsc.c
tsc.h
units.c
units.h
unwind-libdw.c perf map_symbol: Rename ms->mg to ms->maps 2019-11-26 11:07:46 -03:00
unwind-libdw.h
unwind-libunwind-local.c perf maps: Rename 'mg' variables to 'maps' 2019-11-26 11:07:46 -03:00
unwind-libunwind.c perf maps: Rename 'mg' variables to 'maps' 2019-11-26 11:07:46 -03:00
unwind.h perf maps: Merge 'struct maps' with 'struct map_groups' 2019-11-26 11:07:46 -03:00
usage.c
util.c
util.h
values.c
values.h
vdso.c perf thread: Rename thread->mg to thread->maps 2019-11-26 11:07:46 -03:00
vdso.h
xyarray.c
zlib.c
zstd.c