From: Arnaldo Carvalho de Melo <acme@kernel.org>
To: Ingo Molnar <mingo@kernel.org>
Cc: linux-kernel@vger.kernel.org,
Arnaldo Carvalho de Melo <acme@kernel.org>,
Adrian Hunter <adrian.hunter@intel.com>,
Alexander Shishkin <alexander.shishkin@linux.intel.com>,
Alexei Starovoitov <ast@fb.com>,
Chris Ryder <chris.ryder@arm.com>,
David Ahern <dsa@cumulusnetworks.com>,
He Kuang <hekuang@huawei.com>, Jiri Olsa <jolsa@kernel.org>,
Joe Stringer <joe@ovn.org>, Kim Phillips <kim.phillips@arm.com>,
Mark Rutland <mark.rutland@arm.com>,
Namhyung Kim <namhyung@kernel.org>,
Pawel Moll <pawel.moll@arm.com>,
Peter Zijlstra <peterz@infradead.org>,
Wang Nan <wangnan0@huawei.com>, Will Deacon <will.deacon@arm.com>,
Zefan Li <lizefan@huawei.com>,
pi3orama@163.com, Arnaldo Carvalho de Melo <acme@redhat.com>
Subject: [GIT PULL 00/19] perf/core improvements and fixes
Date: Thu, 1 Dec 2016 15:02:16 -0300 [thread overview]
Message-ID: <20161201180235.18392-1-acme@kernel.org> (raw)
Hi Ingo,
Please consider pulling,
- Arnaldo
Test results at the end of this message, as usual.
The following changes since commit 2471cece40d61b0035360338569d338f9dea6099:
Merge tag 'perf-core-for-mingo-20161125' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/core (2016-11-25 18:12:41 +0100)
are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git tags/perf-core-for-mingo-20161201
for you to fetch changes up to 0fcb1da4aba6e6c7b32de5e0948b740b31ad822d:
perf annotate: AArch64 support (2016-12-01 13:03:19 -0300)
----------------------------------------------------------------
perf/core improvements and fixes:
New features:
- Support AArch64 in the 'annotate' code, native/local and
cross-arch/remote (Kim Phillips)
- Allow considering just events in a given time interval, via the
'--time start.s.ms,end.s.ms' command line, added to 'perf kmem',
'perf report', 'perf sched timehist' and 'perf script' (David Ahern)
- Add option to stop printing a callchain at one of a given group of
symbol names (David Ahern)
- Handle cpu migration events in 'perf sched timehist' (David Ahern)
- Track memory freed in 'perf kmem stat' (David Ahern)
Infrastructure:
- Initial support (and perf test entry) for tooling hooks, starting with
'record_start' and 'record_end', that will have as its initial user the
eBPF infrastructure, where perf_ prefixed functions will be JITed and
run when such hooks are called (Wang Nan)
- Remove redundant "test" and similar strings from 'perf test' descriptions
(Arnaldo Carvalho de Melo)
- libbpf assorted improvements (Wang Nan)
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
----------------------------------------------------------------
Arnaldo Carvalho de Melo (3):
perf ui helpline: Provide a printf variant
perf annotate: Show invalid jump offset in error message
perf test: Remove "test" and similar strings from test descriptions
David Ahern (10):
perf sched timehist: Handle cpu migration events
perf trace: Update tid/pid filtering option to leverage symbol_conf
perf kmem stat: Track memory freed
perf script: Add option to stop printing callchain
perf tools: Add time-based utility functions
perf tools: Move parse_nsec_time to time-utils.c
perf script: Add option to specify time window of interest
perf sched timehist: Add option to specify time window of interest
perf kmem: Add option to specify time window of interest
perf report: Add option to specify time window of interest
Kim Phillips (2):
perf annotate: Use arch->objdump.comment_char in dec__parse()
perf annotate: AArch64 support
Wang Nan (4):
tools lib bpf: Add missing BPF functions
tools lib bpf: Add private field for bpf_object
tools lib bpf: Retrive bpf_map through offset of bpf_map_def
perf tools: Introduce perf hooks
tools/lib/bpf/bpf.c | 56 ++++++++++
tools/lib/bpf/bpf.h | 7 ++
tools/lib/bpf/libbpf.c | 35 ++++++
tools/lib/bpf/libbpf.h | 13 +++
tools/perf/Documentation/perf-kmem.txt | 7 ++
tools/perf/Documentation/perf-report.txt | 7 ++
tools/perf/Documentation/perf-sched.txt | 12 +++
tools/perf/Documentation/perf-script.txt | 10 ++
tools/perf/arch/arm64/annotate/instructions.c | 62 +++++++++++
tools/perf/arch/x86/tests/arch-tests.c | 10 +-
tools/perf/builtin-kmem.c | 36 ++++++-
tools/perf/builtin-record.c | 11 ++
tools/perf/builtin-report.c | 14 ++-
tools/perf/builtin-sched.c | 148 ++++++++++++++++++++++++--
tools/perf/builtin-script.c | 17 ++-
tools/perf/builtin-trace.c | 49 ++-------
tools/perf/tests/Build | 1 +
tools/perf/tests/bpf.c | 6 +-
tools/perf/tests/builtin-test.c | 96 +++++++++--------
tools/perf/tests/llvm.c | 8 +-
tools/perf/tests/perf-hooks.c | 44 ++++++++
tools/perf/tests/tests.h | 1 +
tools/perf/ui/browsers/annotate.c | 6 +-
tools/perf/ui/helpline.c | 10 ++
tools/perf/ui/helpline.h | 1 +
tools/perf/util/Build | 3 +
tools/perf/util/annotate.c | 7 +-
tools/perf/util/evsel_fprintf.c | 8 ++
tools/perf/util/perf-hooks-list.h | 3 +
tools/perf/util/perf-hooks.c | 84 +++++++++++++++
tools/perf/util/perf-hooks.h | 37 +++++++
tools/perf/util/symbol.c | 8 ++
tools/perf/util/symbol.h | 6 +-
tools/perf/util/time-utils.c | 119 +++++++++++++++++++++
tools/perf/util/time-utils.h | 14 +++
tools/perf/util/util.c | 33 ------
tools/perf/util/util.h | 2 -
37 files changed, 842 insertions(+), 149 deletions(-)
create mode 100644 tools/perf/arch/arm64/annotate/instructions.c
create mode 100644 tools/perf/tests/perf-hooks.c
create mode 100644 tools/perf/util/perf-hooks-list.h
create mode 100644 tools/perf/util/perf-hooks.c
create mode 100644 tools/perf/util/perf-hooks.h
create mode 100644 tools/perf/util/time-utils.c
create mode 100644 tools/perf/util/time-utils.h
# uname -a
Linux jouet 4.8.8-300.fc25.x86_64 #1 SMP Tue Nov 15 18:10:06 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
# perf test
1: vmlinux symtab matches kallsyms : Ok
2: Detect openat syscall event : Ok
3: Detect openat syscall event on all cpus : Ok
4: Read samples using the mmap interface : Ok
5: Parse event definition strings : Ok
6: PERF_RECORD_* events & perf_sample fields : Ok
7: Parse perf pmu format : Ok
8: DSO data read : Ok
9: DSO data cache : Ok
10: DSO data reopen : Ok
11: Roundtrip evsel->name : Ok
12: Parse sched tracepoints fields : Ok
13: syscalls:sys_enter_openat event fields : Ok
14: Setup struct perf_event_attr : Ok
15: Match and link multiple hists : Ok
16: 'import perf' in python : Ok
17: Breakpoint overflow signal handler : Ok
18: Breakpoint overflow sampling : Ok
19: Number of exit events of a simple workload : Ok
20: Software clock events period values : Ok
21: Object code reading : Ok
22: Sample parsing : Ok
23: Use a dummy software event to keep tracking: Ok
24: Parse with no sample_id_all bit set : Ok
25: Filter hist entries : Ok
26: Lookup mmap thread : Ok
27: Share thread mg : Ok
28: Sort output of hist entries : Ok
29: Cumulate child hist entries : Ok
30: Track with sched_switch : Ok
31: Filter fds with revents mask in a fdarray : Ok
32: Add fd to a fdarray, making it autogrow : Ok
33: kmod_path__parse : Ok
34: Thread map : Ok
35: LLVM search and compile :
35.1: Basic BPF llvm compile : Ok
35.2: kbuild searching : Ok
35.3: Compile source for BPF prologue generation: Ok
35.4: Compile source for BPF relocation : Ok
36: Session topology : Ok
37: BPF filter :
37.1: Basic BPF filtering : Ok
37.2: BPF prologue generation : Ok
37.3: BPF relocation checker : Ok
38: Synthesize thread map : Ok
39: Synthesize cpu map : Ok
40: Synthesize stat config : Ok
41: Synthesize stat : Ok
42: Synthesize stat round : Ok
43: Synthesize attr update : Ok
44: Event times : Ok
45: Read backward ring buffer : Ok
46: Print cpu map : Ok
47: Probe SDT events : Ok
48: is_printable_array : Ok
49: Print bitmap : Ok
50: perf hooks : Ok
51: x86 rdpmc : Ok
52: Convert perf time to TSC : Ok
53: DWARF unwind : Ok
54: x86 instruction decoder - new instructions : Ok
55: Intel cqm nmi context read : Skip
#
# uname -a
Linux zoo 4.7.3-200.fc24.x86_64 #1 SMP Wed Sep 7 17:31:21 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
# dm
1 alpine:3.4: Ok
2 android-ndk:r12b-arm: Ok
3 archlinux:latest: Ok
4 centos:5: Ok
5 centos:6: Ok
6 centos:7: Ok
7 debian:7: Ok
8 debian:8: Ok
9 debian:experimental: Ok
10 fedora:20: Ok
11 fedora:21: Ok
12 fedora:22: Ok
13 fedora:23: Ok
14 fedora:24: Ok
15 fedora:24-x-ARC-uClibc: Ok
16 fedora:rawhide: Ok
17 mageia:5: Ok
18 opensuse:13.2: Ok
19 opensuse:42.1: Ok
20 opensuse:tumbleweed: Ok
21 ubuntu:12.04.5: Ok
22 ubuntu:14.04: Ok
23 ubuntu:14.04.4: Ok
24 ubuntu:15.10: Ok
25 ubuntu:16.04: Ok
26 ubuntu:16.04-x-arm: Ok
27 ubuntu:16.04-x-arm64: Ok
28 ubuntu:16.04-x-powerpc: Ok
29 ubuntu:16.04-x-powerpc64: Ok
30 ubuntu:16.04-x-powerpc64el: Ok
31 ubuntu:16.04-x-s390: Ok
32 ubuntu:16.10: Ok
#
$ grep PRETTY_NAME /etc/os-release
PRETTY_NAME="Fedora 25 (Workstation Edition)"
$
$ perf stat make -C tools/perf build-test
make: Entering directory '/home/acme/git/linux/tools/perf'
- tarpkg: ./tests/perf-targz-src-pkg .
make_no_slang_O: make NO_SLANG=1
make_util_map_o_O: make util/map.o
make_static_O: make LDFLAGS=-static
make_no_libdw_dwarf_unwind_O: make NO_LIBDW_DWARF_UNWIND=1
make_perf_o_O: make perf.o
make_no_libunwind_O: make NO_LIBUNWIND=1
make_no_libelf_O: make NO_LIBELF=1
make_util_pmu_bison_o_O: make util/pmu-bison.o
make_no_backtrace_O: make NO_BACKTRACE=1
make_no_ui_O: make NO_NEWT=1 NO_SLANG=1 NO_GTK2=1
make_no_demangle_O: make NO_DEMANGLE=1
make_no_libperl_O: make NO_LIBPERL=1
make_tags_O: make tags
make_no_scripts_O: make NO_LIBPYTHON=1 NO_LIBPERL=1
make_install_prefix_slash_O: make install prefix=/tmp/krava/
make_no_auxtrace_O: make NO_AUXTRACE=1
make_no_libnuma_O: make NO_LIBNUMA=1
make_install_bin_O: make install-bin
make_no_newt_O: make NO_NEWT=1
make_pure_O: make
make_minimal_O: make NO_LIBPERL=1 NO_LIBPYTHON=1 NO_NEWT=1 NO_GTK2=1 NO_DEMANGLE=1 NO_LIBELF=1 NO_LIBUNWIND=1 NO_BACKTRACE=1 NO_LIBNUMA=1 NO_LIBAUDIT=1 NO_LIBBIONIC=1 NO_LIBDW_DWARF_UNWIND=1 NO_AUXTRACE=1 NO_LIBBPF=1 NO_LIBCRYPTO=1 NO_SDT=1 NO_JVMTI=1
make_clean_all_O: make clean all
make_no_gtk2_O: make NO_GTK2=1
make_no_libbionic_O: make NO_LIBBIONIC=1
make_install_prefix_O: make install prefix=/tmp/krava
make_no_libbpf_O: make NO_LIBBPF=1
make_no_libaudit_O: make NO_LIBAUDIT=1
make_with_babeltrace_O: make LIBBABELTRACE=1
make_no_libpython_O: make NO_LIBPYTHON=1
make_help_O: make help
make_doc_O: make doc
make_debug_O: make DEBUG=1
make_install_O: make install
OK
make: Leaving directory '/home/acme/git/linux/tools/perf'
$
next reply other threads:[~2016-12-01 18:03 UTC|newest]
Thread overview: 58+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-12-01 18:02 Arnaldo Carvalho de Melo [this message]
2016-12-01 18:02 ` [PATCH 01/19] perf ui helpline: Provide a printf variant Arnaldo Carvalho de Melo
2016-12-01 18:02 ` [PATCH 02/19] perf annotate: Show invalid jump offset in error message Arnaldo Carvalho de Melo
2016-12-01 18:02 ` [PATCH 03/19] perf sched timehist: Handle cpu migration events Arnaldo Carvalho de Melo
2016-12-01 18:02 ` [PATCH 04/19] perf trace: Update tid/pid filtering option to leverage symbol_conf Arnaldo Carvalho de Melo
2016-12-01 18:02 ` [PATCH 05/19] tools lib bpf: Add missing BPF functions Arnaldo Carvalho de Melo
2016-12-01 18:02 ` [PATCH 06/19] tools lib bpf: Add private field for bpf_object Arnaldo Carvalho de Melo
2016-12-01 18:02 ` [PATCH 07/19] tools lib bpf: Retrive bpf_map through offset of bpf_map_def Arnaldo Carvalho de Melo
2016-12-01 18:02 ` [PATCH 08/19] perf tools: Introduce perf hooks Arnaldo Carvalho de Melo
2016-12-01 18:02 ` [PATCH 09/19] perf test: Remove "test" and similar strings from test descriptions Arnaldo Carvalho de Melo
2016-12-01 18:02 ` [PATCH 10/19] perf kmem stat: Track memory freed Arnaldo Carvalho de Melo
2016-12-01 18:02 ` [PATCH 11/19] perf script: Add option to stop printing callchain Arnaldo Carvalho de Melo
2016-12-01 18:02 ` [PATCH 12/19] perf tools: Add time-based utility functions Arnaldo Carvalho de Melo
2016-12-01 18:02 ` [PATCH 13/19] perf tools: Move parse_nsec_time to time-utils.c Arnaldo Carvalho de Melo
2016-12-01 18:02 ` [PATCH 14/19] perf script: Add option to specify time window of interest Arnaldo Carvalho de Melo
2016-12-01 18:02 ` [PATCH 15/19] perf sched timehist: " Arnaldo Carvalho de Melo
2016-12-01 18:02 ` [PATCH 16/19] perf kmem: " Arnaldo Carvalho de Melo
2016-12-01 18:02 ` [PATCH 17/19] perf report: " Arnaldo Carvalho de Melo
2016-12-01 18:02 ` [PATCH 18/19] perf annotate: Use arch->objdump.comment_char in dec__parse() Arnaldo Carvalho de Melo
2016-12-01 18:02 ` [PATCH 19/19] perf annotate: AArch64 support Arnaldo Carvalho de Melo
2016-12-02 9:10 ` [GIT PULL 00/19] perf/core improvements and fixes Ingo Molnar
-- strict thread matches above, loose matches on Subject: below --
2017-11-03 13:54 Arnaldo Carvalho de Melo
2017-08-14 16:27 Arnaldo Carvalho de Melo
2017-08-14 16:27 ` Arnaldo Carvalho de Melo
2017-08-14 17:39 ` Ingo Molnar
2017-08-14 17:39 ` Ingo Molnar
2017-08-14 17:52 ` Arnaldo Carvalho de Melo
2017-08-14 17:52 ` Arnaldo Carvalho de Melo
2017-03-14 18:50 Arnaldo Carvalho de Melo
2017-03-15 18:29 ` Ingo Molnar
2016-09-01 16:45 Arnaldo Carvalho de Melo
2016-09-05 13:16 ` Ingo Molnar
2016-07-14 2:20 Arnaldo Carvalho de Melo
2016-07-14 6:58 ` Ingo Molnar
2016-06-15 18:13 Arnaldo Carvalho de Melo
2016-06-16 6:29 ` Jiri Olsa
2016-06-16 19:54 ` Arnaldo Carvalho de Melo
2016-06-16 8:29 ` Ingo Molnar
2016-04-07 20:58 Arnaldo Carvalho de Melo
2016-04-08 13:15 ` Arnaldo Carvalho de Melo
2016-04-13 6:58 ` Ingo Molnar
2016-03-10 21:04 Arnaldo Carvalho de Melo
2016-03-11 8:43 ` Ingo Molnar
2016-02-26 23:18 Arnaldo Carvalho de Melo
2016-02-27 9:36 ` Ingo Molnar
2016-02-05 16:25 Arnaldo Carvalho de Melo
2016-02-09 9:40 ` Ingo Molnar
2015-04-08 14:23 Arnaldo Carvalho de Melo
2015-04-08 14:23 ` Arnaldo Carvalho de Melo
2015-04-08 15:05 ` Ingo Molnar
2015-04-08 15:05 ` Ingo Molnar
2015-03-21 18:54 Arnaldo Carvalho de Melo
2015-03-22 9:58 ` Ingo Molnar
2015-02-27 19:22 Arnaldo Carvalho de Melo
2014-01-17 14:57 Arnaldo Carvalho de Melo
2014-01-19 12:11 ` Ingo Molnar
2012-05-22 17:39 Arnaldo Carvalho de Melo
2012-05-23 15:06 ` Ingo Molnar
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20161201180235.18392-1-acme@kernel.org \
--to=acme@kernel.org \
--cc=acme@redhat.com \
--cc=adrian.hunter@intel.com \
--cc=alexander.shishkin@linux.intel.com \
--cc=ast@fb.com \
--cc=chris.ryder@arm.com \
--cc=dsa@cumulusnetworks.com \
--cc=hekuang@huawei.com \
--cc=joe@ovn.org \
--cc=jolsa@kernel.org \
--cc=kim.phillips@arm.com \
--cc=linux-kernel@vger.kernel.org \
--cc=lizefan@huawei.com \
--cc=mark.rutland@arm.com \
--cc=mingo@kernel.org \
--cc=namhyung@kernel.org \
--cc=pawel.moll@arm.com \
--cc=peterz@infradead.org \
--cc=pi3orama@163.com \
--cc=wangnan0@huawei.com \
--cc=will.deacon@arm.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.