linux-stable/tools/perf/tests
Weilin Wang 3ad7092f51 perf test: Add metric value validation test
Add metric value validation test to check if metric values are with in
correct value ranges. There are three types of tests included: 1)
positive-value test checks if all the metrics collected are non-negative;
2) single-value test checks if the list of metrics have values in given
value ranges; 3) relationship test checks if multiple metrics follow a
given relationship, e.g. memory_bandwidth_read + memory_bandwidth_write =
memory_bandwidth_total.

Signed-off-by: Weilin Wang <weilin.wang@intel.com>
Tested-by: Namhyung Kim <namhyung@kernel.org>
Cc: ravi.bangoria@amd.com
Cc: Ian Rogers <irogers@google.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: Caleb Biggers <caleb.biggers@intel.com>
Cc: Perry Taylor <perry.taylor@intel.com>
Cc: Samantha Alt <samantha.alt@intel.com>
Cc: Arnaldo Carvalho de Melo <acme@kernel.org>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Kan Liang <kan.liang@linux.intel.com>
Cc: Ingo Molnar <mingo@redhat.com>
Link: https://lore.kernel.org/r/20230620170027.1861012-2-weilin.wang@intel.com
Signed-off-by: Namhyung Kim <namhyung@kernel.org>
2023-06-21 22:23:32 -07:00
..
attr perf test attr: Update no event/metric expectations 2023-05-19 10:36:25 -03:00
shell perf test: Add metric value validation test 2023-06-21 22:23:32 -07:00
workloads perf test workload thloop: Make count increments atomic 2023-01-19 13:42:06 -03:00
.gitignore
api-io.c perf tests api-io: Use zfree() to reduce chances of use after free 2023-04-12 10:14:58 -03:00
attr.c perf pmus: Remove perf_pmus__has_hybrid 2023-05-27 09:42:38 -03:00
attr.py perf test attr: Fix python SafeConfigParser() deprecation warning 2023-05-19 10:36:35 -03:00
backward-ring-buffer.c
bitmap.c perf tools: Use dedicated non-atomic clear/set bit helpers 2022-12-05 09:29:06 -03:00
bp_account.c perf test: Fix variable length array undefined behavior in bp_account 2022-06-19 10:41:43 -03:00
bp_signal.c
bp_signal_overflow.c
bpf-script-example.c perf test: Switch basic bpf filtering test to use syscall tracepoint 2023-01-23 09:58:01 -03:00
bpf-script-test-kbuild.c
bpf-script-test-prologue.c perf tests bpf prologue: Fix bpf-script-test-prologue test compile issue with clang 2023-01-09 11:57:47 -03:00
bpf-script-test-relocation.c
bpf.c perf evlist: Remove nr_groups 2023-03-13 17:42:27 -03:00
Build perf test: Add Symbols test 2023-01-22 18:09:56 -03:00
builtin-test-list.c perf test: Refactor shell tests allowing subdirs 2022-08-13 15:13:20 -03:00
builtin-test-list.h perf test: Refactor shell tests allowing subdirs 2022-08-13 15:13:20 -03:00
builtin-test.c perf tests: Organize cpu_map tests into a single suite 2023-05-26 22:47:22 -03:00
clang.c
code-reading.c perf machine: Make delete_threads part of machine__exit 2023-06-12 15:57:53 -03:00
cpumap.c perf cpumap: Add equal function 2023-05-27 09:36:44 -03:00
demangle-java-test.c
demangle-ocaml-test.c
dlfilter-test.c perf tools: Fix usage of the verbose variable 2022-12-20 15:16:33 -03:00
dso-data.c
dwarf-unwind.c perf machine: Make delete_threads part of machine__exit 2023-06-12 15:57:53 -03:00
event-times.c perf tools: Do not pass NULL to parse_events() 2022-08-10 14:30:09 -03:00
event_groups.c perf pmu: Separate pmu and pmus 2023-05-27 09:41:39 -03:00
event_update.c perf events: Prefer union over variable length array 2022-10-04 08:55:21 -03:00
evsel-roundtrip-name.c perf test: Roundtrip name, don't assume 1 event per name 2023-05-15 09:12:13 -03:00
evsel-tp-sched.c
expand-cgroup.c perf evsel: Introduce evsel__name_is() method to check if the evsel name is equal to a given string 2023-04-24 14:28:11 -03:00
expr.c perf expr: Make the evaluation of & and | logical and lazy 2023-06-05 15:56:14 -03:00
fdarray.c
genelf.c
hists_common.c perf thread: Add accessor functions for thread 2023-06-12 15:57:53 -03:00
hists_common.h
hists_cumulate.c perf addr_location: Add init/exit/copy functions 2023-06-12 15:57:53 -03:00
hists_filter.c perf addr_location: Add init/exit/copy functions 2023-06-12 15:57:53 -03:00
hists_link.c perf thread: Add reference count checking 2023-06-12 15:57:53 -03:00
hists_output.c perf addr_location: Add init/exit/copy functions 2023-06-12 15:57:53 -03:00
is_printable_array.c
keep-tracking.c perf tools: Do not pass NULL to parse_events() 2022-08-10 14:30:09 -03:00
kmod-path.c
llvm.c
llvm.h
make perf tests: Make x86 new instructions test optional at build time 2023-06-13 23:40:32 -03:00
maps.c perf maps: Make delete static, always use put 2023-06-12 15:57:53 -03:00
mem.c
mem2node.c perf tools: Use dedicated non-atomic clear/set bit helpers 2022-12-05 09:29:06 -03:00
mmap-basic.c perf tests: Add missing event.h include 2022-10-31 11:07:08 -03:00
mmap-thread-lookup.c perf machine: Make delete_threads part of machine__exit 2023-06-12 15:57:53 -03:00
openat-syscall-all-cpus.c perf tests: Avoid pthread.h inclusion 2022-10-04 08:55:19 -03:00
openat-syscall-tp-fields.c perf tools: Move 'struct perf_sample' to a separate header file to disentangle headers 2022-10-31 11:06:41 -03:00
openat-syscall.c perf thread_map: Reduce exposure of libperf internal API 2022-11-16 12:17:15 -03:00
parse-events.c perf parse: Allow config terms with breakpoints 2023-06-12 15:57:53 -03:00
parse-metric.c perf pmus: Remove perf_pmus__has_hybrid 2023-05-27 09:42:38 -03:00
parse-no-sample-id-all.c perf tools: Move 'struct perf_sample' to a separate header file to disentangle headers 2022-10-31 11:06:41 -03:00
pe-file-parsing.c
pe-file.c
pe-file.exe
pe-file.exe.debug
perf-hooks.c
perf-record.c perf tests: Add missing event.h include 2022-10-31 11:07:08 -03:00
perf-targz-src-pkg perf thread: Add accessor functions for thread 2023-06-12 15:57:53 -03:00
perf-time-to-tsc.c perf tools: Move 'struct perf_sample' to a separate header file to disentangle headers 2022-10-31 11:06:41 -03:00
pfm.c perf evlist: Remove nr_groups 2023-03-13 17:42:27 -03:00
pmu-events.c perf pmus: Allow just core PMU scanning 2023-05-27 09:42:00 -03:00
pmu.c perf test pmu: Avoid 2 static path arrays 2023-05-28 10:25:45 -03:00
python-use.c perf test python: Put perf python at start of sys.path 2023-05-27 09:35:14 -03:00
sample-parsing.c perf script: Show branch speculation info 2023-02-02 17:18:31 -03:00
sdt.c
sigtrap.c perf test: Skip sigtrap test on old kernels 2022-10-04 08:55:22 -03:00
stat.c
sw-clock.c perf tools: Move 'struct perf_sample' to a separate header file to disentangle headers 2022-10-31 11:06:41 -03:00
switch-tracking.c perf pmus: Remove perf_pmus__has_hybrid 2023-05-27 09:42:38 -03:00
symbols.c perf machine: Make delete_threads part of machine__exit 2023-06-12 15:57:53 -03:00
task-exit.c
tests.h perf tests: Organize cpu_map tests into a single suite 2023-05-26 22:47:22 -03:00
thread-map.c perf thread_map: Reduce exposure of libperf internal API 2022-11-16 12:17:15 -03:00
thread-maps-share.c perf thread: Add accessor functions for thread 2023-06-12 15:57:53 -03:00
time-utils-test.c
topology.c perf pmus: Remove perf_pmus__has_hybrid 2023-05-27 09:42:38 -03:00
unit_number__scnprintf.c
vmlinux-kallsyms.c perf map: Add set_ methods for map->{start,end,pgoff,pgoff,reloc,erange_warned,dso,map_ip,unmap_ip,priv} 2023-04-19 12:54:41 -03:00
wp.c perf test: Skip watchpoint tests if no watchpoints available 2022-11-23 10:32:53 -03:00