diff options
author | Thomas Gleixner <tglx@linutronix.de> | 2020-05-08 15:00:12 +0200 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2020-05-08 15:00:12 +0200 |
commit | 059c6d68cfc5f85ba3ab71d71a6de380016f7936 (patch) | |
tree | 32dc5be3d88cb56d8e38c1f093a130978e34b3ab /tools/perf/util/evlist.h | |
parent | perf/x86/intel/pt: Drop pointless NULL assignment. (diff) | |
parent | perf flamegraph: Use /bin/bash for report and record scripts (diff) | |
download | linux-dev-059c6d68cfc5f85ba3ab71d71a6de380016f7936.tar.xz linux-dev-059c6d68cfc5f85ba3ab71d71a6de380016f7936.zip |
Merge tag 'perf-core-for-mingo-5.8-20200506' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/core
Pull perf updates from Arnaldo:
perf/core improvements and fixes:
perf record:
- Introduce --switch-output-event to use arbitrary events to be setup
and read from a side band thread and, when they take place a signal
be sent to the main 'perf record' thread, reusing the --switch-output
code to take perf.data snapshots from the --overwrite ring buffer, e.g.:
# perf record --overwrite -e sched:* \
--switch-output-event syscalls:*connect* \
workload
will take perf.data.YYYYMMDDHHMMSS snapshots up to around the
connect syscalls.
Stephane Eranian:
- Add --num-synthesize-threads option to control degree of parallelism of the
synthesize_mmap() code which is scanning /proc/PID/task/PID/maps and can be
time consuming. This mimics pre-existing behaviour in 'perf top'.
Intel PT:
Adrian Hunter:
- Add support for synthesizing branch stacks for regular events (cycles,
instructions, etc) from Intel PT data.
perf bench:
Ian Rogers:
- Add a multi-threaded synthesize benchmark.
- Add kallsyms parsing benchmark.
Tommi Rantala:
- Fix div-by-zero if runtime is zero.
perf synthetic events:
- Remove use of sscanf from /proc reading when parsing pre-existing
threads to generate synthetic PERF_RECORD_{FORK,MMAP,COMM,etc} events.
tools api:
- Add a lightweight buffered reading API.
libsymbols:
- Parse kallsyms using new lightweight buffered reading io API.
perf parse-events:
- Fix memory leaks found on parse_events.
perf mem2node:
- Avoid double free related to realloc().
perf stat:
Jin Yao:
- Zero all the 'ena' and 'run' array slot stats for interval mode.
- Improve runtime stat for interval mode
Kajol Jain:
- Enable Hz/hz printing for --metric-only option
- Enhance JSON/metric infrastructure to handle "?".
perf tests:
Kajol Jain:
- Added test for runtime param in metric expression.
Tommi Rantala:
- Fix data path in the session topology test.
perf vendor events power9:
Kajol Jain:
- Add hv_24x7 socket/chip level metric events
Coresight:
Leo Yan:
- Move definition of 'traceid_list' global variable from header file.
Mike Leach:
- Update to build with latest opencsd version.
perf pmu:
Shaokun Zhang:
- Fix function name in comment, its get_cpuid_str(), not get_cpustr()
Stephane Eranian:
- Add perf_pmu__find_by_type() helper
perf script:
Stephane Eranian:
- Remove extraneous newline in perf_sample__fprintf_regs().
Ian Rogers:
- Avoid NULL dereference on symbol.
tools feature:
Stephane Eranian:
- Add support for detecting libpfm4.
perf symbol:
Thomas Richter:
- Fix kernel symbol address display in TUI verbose mode.
perf cgroup:
Tommi Rantala:
- Avoid needless closing of unopened fd
libperf:
He Zhe:
- Add NULL pointer check for cpu_map iteration and NULL
assignment for all_cpus.
Ian Rogers:
- Fix a refcount leak in evlist method.
Arnaldo Carvalho de Melo:
- Rename the code in tools/perf/util, i.e. perf tooling specific, that
operates on 'struct evsel' to evsel__, leaving the perf_evsel__
namespace for the routines in tools/lib/perf/ that operate on
'struct perf_evsel__'.
tools/perf specific libraries:
Konstantin Khlebnikov:
- Fix reading new topology attribute "core_cpus"
- Simplify checking if SMT is active.
perf flamegraph:
Arnaldo Carvalho de Melo:
- Use /bin/bash for report and record scripts, just like all other
such scripts, fixing a package dependency bug in a Linaro
OpenEmbedded build checker.
perf evlist:
Jagadeesh Pagadala:
- Remove duplicate headers.
Miscelaneous:
Zou Wei:
- Remove unneeded semicolon in libtraceevent, 'perf c2c' and others.
- Fix warning assignment of 0/1 to bool variable in 'perf report'
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools/perf/util/evlist.h')
-rw-r--r-- | tools/perf/util/evlist.h | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/tools/perf/util/evlist.h b/tools/perf/util/evlist.h index f5bd5c386df1..b6f325dfb4d2 100644 --- a/tools/perf/util/evlist.h +++ b/tools/perf/util/evlist.h @@ -107,10 +107,11 @@ int __perf_evlist__add_default_attrs(struct evlist *evlist, int perf_evlist__add_dummy(struct evlist *evlist); -int perf_evlist__add_sb_event(struct evlist **evlist, +int perf_evlist__add_sb_event(struct evlist *evlist, struct perf_event_attr *attr, - perf_evsel__sb_cb_t cb, + evsel__sb_cb_t cb, void *data); +void evlist__set_cb(struct evlist *evlist, evsel__sb_cb_t cb, void *data); int perf_evlist__start_sb_thread(struct evlist *evlist, struct target *target); void perf_evlist__stop_sb_thread(struct evlist *evlist); @@ -173,10 +174,6 @@ void evlist__close(struct evlist *evlist); struct callchain_param; void perf_evlist__set_id_pos(struct evlist *evlist); -bool perf_can_sample_identifier(void); -bool perf_can_record_switch_events(void); -bool perf_can_record_cpu_wide(void); -bool perf_can_aux_sample(void); void perf_evlist__config(struct evlist *evlist, struct record_opts *opts, struct callchain_param *callchain); int record_opts__config(struct record_opts *opts); |