perf tools changes for v7.0:

- Introduce 'perf sched stats' tool with record/report/diff workflows
  using schedstat counters.

- Add a faster libdw based addr2line implementation and allow selecting
  it or its alternatives via 'perf config addr2line.style='.

- Data-type profiling fixes and improvements including the ability
  to select fields using 'perf report''s -F/-fields, e.g.:

    'perf report --fields overhead,type'

- Add 'perf test' regression tests for Data-type profiling with
  C and Rust workloads.

- Fix srcline printing with inlines in callchains, make sure this has
  coverage in 'perf test'.

- Fix printing of leaf IP in LBR callchains.

- Fix display of metrics without sufficient permission in 'perf stat'.

- Print all machines in 'perf kvm report -vvv', not just the host.

- Switch from SHA-1 to BLAKE2s for build ID generation, remove SHA-1
  code.

- Fix 'perf report's histogram entry collapsing with '-F' option.

- Use system's cacheline size instead of a hardcoded value in 'perf
  report'.

- Allow filtering conversion by time range in 'perf data'.

- Cover conversion to CTF using 'perf data' in 'perf test'.

- Address newer glibc const-correctness (-Werror=discarded-qualifiers)
  issues.

- Fixes and improvements for ARM's CoreSight support, simplify ARM SPE
  event config in 'perf mem', update docs for 'perf c2c' including the
  ARM events it can be used with.

- Build support for generating metrics from arch specific python script,
  add extra AMD, Intel, ARM64 metrics using it.

- Add AMD Zen 6 events and metrics.

- Add JSON file with OpenHW Risc-V CVA6 hardware counters.

- Add 'perf kvm' stats live testing.

- Add more 'perf stat' tests to 'perf test'.

- Fix segfault in `perf lock contention -b/--use-bpf`

- Fix various 'perf test' cases for s390.

- Build system cleanups, bump minimum shellcheck version to 0.7.2

- Support building the capstone based annotation routines as a plugin.

- Allow passing extra Clang flags via EXTRA_BPF_FLAGS.

Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
perf test script: Add python script testing support

Basic coverage of python script support from `perf script`.

Committer testing:

  $ perf test 'perf script python'
  107: perf script python tests                                        : Ok
  $ perf test -vv 'perf script python'
  107: perf script python tests:
  --- start ---
  test child forked, pid 595537
  Testing event: sched:sched_switch
  perf script python test [Skipped: failed to record sched:sched_switch]
  Testing event: task-clock
  Generating python script...
  generated Python script: /tmp/__perf_test_script.J4rWj.py
  Executing python script...
  perf script python test [Success: task-clock triggered param_dict]
  ---- end(0) ----
  107: perf script python tests                                        : Ok
  $

Signed-off-by: Ian Rogers <irogers@google.com>
Tested-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: James Clark <james.clark@linaro.org>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Leo Yan <leo.yan@arm.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Sandipan Das <sandipan.das@amd.com>
Cc: Yujie Liu <yujie.liu@intel.com>
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
1 file changed