[GIT PULL 00/35] perf/core improvements and fixes
From: Arnaldo Carvalho de Melo Hi Ingo, Please consider pulling, Best regards, - Arnaldo The following changes since commit fa6e8e5f7cbf85f364ebd5a90525dbbe9de2083b: Merge tag 'perf-core-for-mingo' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/core (2013-12-18 14:07:26 +0100) are available in the git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux tags/perf-core-for-mingo for you to fetch changes up to a419e512731892c3e7e661cd96e7f7d6a7acdc91: perf stat: Do not show stats if workload fails (2013-12-20 13:37:50 -0300) User visible changes: Improvements: . Do not show stats if workload fails in 'stat' (David Ahern) . Print session information only if --stdio is given (Namhyung Kim) Developer stuff: Fixes: . Get rid of a duplicate va_end() in error reporting (Namhyung Kim) . If a hist entry doesn't have symbol information, compare it with its address. Affects upcoming new feature (--cumulate) (Namhyung Kim) Improvements: . Make libtraceevent install target quieter (Jiri Olsa) . Make tests/make output more compact (Jiri Olsa) New APIs: . Introduce pevent_filter_strerror() in libtraceevent, similar in purpose to libc's strerror() function. (Namhyung Kim) Refactorings: . Use perf_data_file methods to write output file in 'record' and 'inject' (Jiri Olsa) . Use pr_*() functions where applicable in 'report' (Namhyumg Kim) . Add 'machine' 'addr_location' struct to have full picture (machine, thread, map, symbol, addr) for a (partially) resolved address, reducing function signatures (Arnaldo Carvalho de Melo) . Reduce code duplication in the histogram entry creation/insertion. (Arnaldo Carvalho de Melo) . Auto allocate annotation histogram data structures, (Arnaldo Carvalho de Melo) Signed-off-by: Arnaldo Carvalho de Melo Arnaldo Carvalho de Melo (16): perf annotate: Auto allocate symbol per addr hist buckets perf hists: Leave symbol addr hist bucket auto alloc to symbol layer perf annotate: Add inc_samples method to addr_map_symbol perf top: Use hist_entry__inc_addr_sample perf annotate: Adopt methods from hists perf annotate: Make symbol__inc_addr_samples private perf report: Introduce helpers for processing callchains perf record: Simplify perf_record__write perf record: Rename 'perf_record' to plain 'record' perf tools: Rename 'perf_record_opts' to 'record_opts perf report: Rename 'perf_report' to 'report' perf ui browser: Remove misplaced __maybe_unused perf scripting python: Shorten function signatures perf scripting perl: Shorten function signatures perf mem: Remove unused parameter from dump_raw_samples() perf symbols: Add 'machine' member to struct addr_location David Ahern (1): perf stat: Do not show stats if workload fails Jiri Olsa (11): perf inject: Handle output file via perf_data_file object perf record: Use perf_data_file__write for output file perf tests: Factor make install tests perf tools: Making QUIET_(CLEAN|INSTAL) variables global tools lib traceevent: Remove print_app_build variable tools lib traceevent: Use global QUIET_CC build output tools lib traceevent: Add global QUIET_CC_FPIC build output tools lib traceevent: Use global QUIET_LINK build output tools lib traceevent: Use global QUIET_INSTALL build output tools lib traceevent: Use global QUIET_CLEAN build output tools lib traceevent: Use global 'O' processing code Namhyung Kim (7): perf sort: Compare addresses if no symbol info perf sort: Do not compare dso again perf hists: Do not pass period and weight to add_hist_entry() tools lib traceevent: Introduce pevent_filter_strerror() perf tools: Get rid of a duplicate va_end() in error reporting routine perf report: Use pr_*() functions where applicable perf report: Print session information only if --stdio is given tools/lib/traceevent/Makefile | 85 +++ tools/lib/traceevent/event-parse.c | 17 +- tools/lib/traceevent/event-parse.h | 7 +- tools/lib/traceevent/parse-filter.c| 98 tools/perf/builtin-annotate.c | 10 +- tools/perf/builtin-inject.c| 65 +++--- tools/perf/builtin-kvm.c | 2 +- tools/perf/builtin-mem.c | 5 +- tools/perf/builtin-record.c| 94 tools/perf/builtin-report.c| 259 +++-- tools/perf/builtin-script.c| 16 +- tools/perf/builtin-stat.c | 11 +- tools/perf/builtin-top.c | 23 +- tools/perf/b
[GIT PULL 00/35] perf/core improvements and fixes
From: Arnaldo Carvalho de Melo Hi Ingo, Please consider pulling, this is on top of perf-core-for-mingo-4.19-20180809, that is not yet in tip. Thanks, - Arnaldo Test results at the end of this message, as usual. The following changes since commit 6a9405b56c274024564f9014bba97b92c91b34d6: perf map: Optimize maps__fixup_overlappings() (2018-08-08 15:56:00 -0300) are available in the Git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git tags/perf-core-for-mingo-4.19-20180815 for you to fetch changes up to 6855dc41b24619c3d1de3dbd27dd0546b0e45272: x86: Add entry trampolines to kcore (2018-08-14 19:13:26 -0300) perf/core improvements ad fixes: kernel: . kallsyms, x86: Export addresses of PTI entry trampolines (Alexander Shishkin) . kallsyms: Simplify update_iter_mod() (Adrian Hunter) . x86: Add entry trampolines to kcore (Adrian Hunter) Hardware tracing: . Fix auxtrace queue resize (Adrian Hunter) Arch specific: . Fix uninitialized ARM SPE record error variable (Kim Phillips) . Fix trace event post-processing in powerpc (Sandipan Das) Build: . Fix check-headers.sh AND list path of execution (Alexander Kapshuk) . Remove -mcet and -fcf-protection when building the python binding with older clang versions (Arnaldo Carvalho de Melo) . Make check-headers.sh check based on kernel dir (Jiri Olsa) . Move syscall_64.tbl check into check-headers.sh (Jiri Olsa) Infrastructure: . Check for null when copying nsinfo. (Benno Evers) Libraries: . Rename libtraceevent prefixes, prep work for making it a shared library generaly available (Tzvetomir Stoyanov (VMware)) Signed-off-by: Arnaldo Carvalho de Melo Adrian Hunter (3): perf auxtrace: Fix queue resize kallsyms: Simplify update_iter_mod() x86: Add entry trampolines to kcore Alexander Kapshuk (1): perf tools: Fix check-headers.sh AND list path of execution Alexander Shishkin (1): kallsyms, x86: Export addresses of PTI entry trampolines Arnaldo Carvalho de Melo (1): perf python: Remove -mcet and -fcf-protection when building with clang Benno Evers (1): perf tools: Check for null when copying nsinfo. Jiri Olsa (2): perf tools: Make check-headers.sh check based on kernel dir perf tools: Move syscall_64.tbl check into check-headers.sh Kim Phillips (1): perf arm spe: Fix uninitialized record error variable Sandipan Das (1): perf probe powerpc: Fix trace event post-processing Tzvetomir Stoyanov (VMware) (24): tools lib traceevent, perf tools: Rename struct pevent to struct tep_handle tools lib traceevent, perf tools: Rename 'struct pevent_record' to 'struct tep_record' tools lib traceevent, perf tools: Rename pevent plugin related APIs tools lib traceevent, perf tools: Rename pevent alloc / free APIs tools lib traceevent, perf tools: Rename pevent find APIs tools lib traceevent, perf tools: Rename pevent parse APIs tools lib traceevent, perf tools: Rename pevent print APIs tools lib traceevent, perf tools: Rename pevent_read_number_* APIs tools lib traceevent, perf tools: Rename pevent_register_* APIs tools lib traceevent, perf tools: Rename pevent_set_* APIs tools lib traceevent, perf tools: Rename traceevent_* APIs tools lib traceevent, perf tools: Rename 'enum pevent_flag' to 'enum tep_flag' tools lib traceevent, tools lib lockdep: Rename 'enum pevent_errno' to 'enum tep_errno' tools lib traceevent: Rename pevent_function* APIs tools lib traceevent, perf tools: Rename traceevent_plugin_* APIs tools lib traceevent: Rename pevent_filter* APIs tools lib traceevent: Rename pevent_register / unregister APIs tools lib traceevent: Rename pevent_data_ APIs tools lib traceevent: Rename pevent field APIs tools lib traceevent: Rename pevent_find_* APIs tools lib traceevent: Rename various pevent get/set/is APIs tools lib traceevent: Rename internal parser related APIs tools lib traceevent: Rename various pevent APIs tools lib traceevent: Rename static variables and functions in event-parse.c arch/x86/mm/cpu_entry_area.c | 33 + fs/proc/kcore.c| 7 +- include/linux/kcore.h | 13 + kernel/kallsyms.c | 51 +- tools/lib/lockdep/Makefile | 4 +- tools/lib/traceevent/Makefile | 4 +- tools/lib/traceevent/event-parse.c | 696 ++--- tools/lib/traceevent/event-parse.h | 458 +++--- tools/lib/traceevent/event-plugin.c| 70 +-- tools/lib/traceevent/parse-filter.c| 288 - tools/lib/traceevent/plugin_cfg80211.c
[GIT PULL 00/35] perf/core improvements and fixes
Hi Ingo, Please consider pulling, - Arnaldo Test results at the end of this message, as usual. The following changes since commit c978b9460fe1d4a1e1effa0abd6bd69b18a098a8: Merge tag 'perf-core-for-mingo-5.1-20190225' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/core (2019-02-28 08:29:50 +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-5.1-20190307 for you to fetch changes up to b8f7d86b5849ea7bb84bddc0345a3799049764d4: perf data: Force perf_data__open|close zero data->file.path (2019-03-06 18:21:00 -0300) perf bpf: Arnaldo Carvalho de Melo: - Automatically add BTF ELF markers to 'perf trace' BPF programs, so that tools such as 'bpftool map dump' can pretty print map keys and values. perf c2c: Jiri Olsa: - Fix report for empty NUMA node. perf diff: Jin Yao: - Support --time, --cpu, --pid and --tid filter options. perf probe: Arnaldo Carvalho de Melo: - Clarify error message about not finding kernel modules debuginfo. perf record: Jiri Olsa: - Fixup probing for max attr.precise_ip. perf trace: Arnaldo Carvalho de Melo: - Add missing %s lost in the 'msg_flags' recvmmsg arg when adding prefix suppression logic. perf annotate: Arnaldo Carvalho de Melo: - Calculate the max instruction name, align column to that, removing the hardcoded max 6 chars and cope with instructions with names longer than that, such as vpmovmskb, vpcmpeqb, etc. kernel: Song Liu: - Consider events with attr.bpf_event set as side-band. Gustavo A. R. Silva: - Mark expected switch fall-through in perf_event_parse_addr_filter(). Libraries: Jiri Olsa: - Fix leaks and double frees on error paths. libtraceevent: Tony Jones: - Fix buffer overflow in arg_eval(). python scripting: Tony Jones: - More python3 fixes. Trivial: Yang Wei: - Remove needless extra semicolon in clang C++ glue code. Intel PT/BTS: Adrian Hunter: - Improve auxtrace address filter error message when there is no DSO. - Fix divide by zero when TSC is not available. - Further improvements to the export to sqlite/posgresql python scripts and to the GUI sqlviewer, exporting 'parent_id' so that we have enable the creation of call trees. Andi Kleen: - Generalize function to copy from thread addr space from intel-bts code. Signed-off-by: Arnaldo Carvalho de Melo Adrian Hunter (10): perf auxtrace: Improve address filter error message when there is no DSO perf intel-pt: Fix divide by zero when TSC is not available perf db-export: Add calls parent_id to enable creation of call trees perf scripts python: export-to-sqlite.py: Export calls parent_id perf scripts python: export-to-postgresql.py: Fix invalid input syntax for integer error perf scripts python: export-to-postgresql.py: Export calls parent_id perf scripts python: exported-sql-viewer.py: Factor out TreeWindowBase perf scripts python: exported-sql-viewer.py: Improve TreeModel abstraction perf scripts python: exported-sql-viewer.py: Factor out CallGraphModelBase perf scripts python: exported-sql-viewer.py: Add call tree Andi Kleen (1): perf thread: Generalize function to copy from thread addr space from intel-bts code Arnaldo Carvalho de Melo (4): perf probe: Clarify error message about not finding kernel modules debuginfo perf beauty msg_flags: Add missing %s lost when adding prefix suppression logic perf bpf: Automatically add BTF ELF markers perf annotate: Calculate the max instruction name, align column to that Gustavo A. R. Silva (1): perf: Mark expected switch fall-through Jin Yao (4): perf time-utils: Refactor time range parsing code perf diff: Support --time filter option perf diff: Support --cpu filter option perf diff: Support --pid/--tid filter options Jiri Olsa (7): perf c2c: Fix c2c report for empty numa node perf hist: Add error path into hist_entry__init perf hist: Fix memory leak of srcline perf tools: Read and store caps/max_precise in perf_pmu perf evsel: Probe for precise_ip with simple attr perf session: Fix double free in perf_data__close perf data: Force perf_data__open|close zero data->file.path Song Liu (1): perf, bpf: Consider events with attr.bpf_event as side-band events Tony Jones (6): tools lib traceevent: Fix buffer overflow in arg_eval perf script python: Remove mixed indentation perf script python: Add Python3 support to futex-contention.py perf script python: add Python3 support to check-perf-trace.py perf script python: Add Python3 support to event_analyzing_sample.py perf script python: Add Pytho
[GIT PULL 00/35] perf/core improvements and fixes
From: Arnaldo Carvalho de Melo Hi Ingo, Please consider pulling, - Arnaldo Test results at the end of this message, as usual. The following changes since commit 9d020d33fc1b2faa0eb35859df1381ca5dc94ffe: Merge branch 'linus' into perf/urgent, to resolve conflict (2017-03-02 08:05:45 +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-4.11-20170306 for you to fetch changes up to 001916b94a04809a94abb07daba6f9ace01906ba: perf bench numa: Add more comment for -c option (2017-03-06 12:39:30 -0300) perf/core improvements and fixes: New features: - Allow sorting by symbol_size in 'perf report' and 'perf top' (Charles Baylis) E.g.: # perf report -s symbol_size,symbol Samples: 9K of event 'cycles:k', Event count (approx.): 2870461623 Overhead Symbol size Symbol 14.55% 326 [k] flush_tlb_mm_range 7.20% 1045 [k] filemap_map_pages 5.82% 124 [k] vma_interval_tree_insert 5.18% 2430 [k] unmap_page_range 2.57% 571 [k] vma_interval_tree_remove 1.94% 494 [k] page_add_file_rmap 1.82% 740 [k] page_remove_rmap 1.66% 1017 [k] release_pages 1.57% 1636 [k] update_blocked_averages 1.57% 76 [k] unlock_page - Add support for -p/--pid, -a/--all-cpus and -C/--cpu in 'perf ftrace' (Namhyung Kim) Change in behaviour: - Make system wide (-a) the default option if no target was specified and one of following conditions is met: - No workload specified (current behaviour) - A workload is specified but all requested events are system wide ones, like uncore ones. (Jiri Olsa) Fixes: - Add missing initialization to the instruction decoder used in the intel PT/BTS code, which was causing lots of failures in 'perf test', looking for a value when there was none (Adrian Hunter) Infrastructure: - Add arch code needed to adopt the kernel's refcount_t to aid in catching bugs when using atomic_t as a reference counter, basically cmpxchg related functions (Arnaldo Carvalho de Melo) - Convert the code using atomic_t as reference counts to refcount_t (Elena Rashetova) - Add feature test for sched_getcpu() to more easily check for its presence in the many libc implementations and accross different versions of such C libraries (Arnaldo Carvalho de Melo) - Issue a HW watchdog disable hint in 'perf stat' for when some of the requested events can't get counted because a PMU counter is taken by that watchdog (Borislav Petkov). - Add mapping for Intel's KnightsMill PMU events (Karol Wachowski) Documentation: - Clarify the term 'convergence' in: perf bench numa numa-mem -h --show_convergence (Jiri Olsa) Kernel code: - Ensure probe location is at function entry in kretprobes (Naveen N. Rao) - Allow return probes with offsets and absolute addresses (Naveen N. Rao) Signed-off-by: Arnaldo Carvalho de Melo Adrian Hunter (1): perf intel-PT/BTS: Add missing initialization Arnaldo Carvalho de Melo (12): tools include: Adopt __compiletime_error tools arch x86: Include asm/cmpxchg.h tools arch x86: Introduce atomic_cmpxchg() tools include: Introduce atomic_cmpxchg_{relaxed,release}() tools include: Provide gcc based cmpxchg fallback for !x86 tools include: Add UINT_MAX def to kernel.h tools include: Adopt kernel's refcount.h perf evlist: Clarify a bit the use of perf_mmap->refcnt tools build: Add test for sched_getcpu() perf bench futex: Use __maybe_unused perf bench futex: Fix build on musl + clang tools build: Use the same CC for feature detection and actual build Borislav Petkov (1): perf stat: Issue a HW watchdog disable hint Charles Baylis (1): perf tools: Allow sorting by symbol size Elena Reshetova (9): perf cgroup: Convert cgroup_sel.refcnt from atomic_t to refcount_t perf cpumap: Convert cpu_map.refcnt from atomic_t to refcount_t perf comm: Convert comm_str.refcnt from atomic_t to refcount_t perf dso: Convert dso.refcnt from atomic_t to refcount_t perf map: Convert map.refcnt from atomic_t to refcount_t perf map: Convert map_groups.refcnt from atomic_t to refcount_t perf evlist: Convert perf_map.refcnt from atomic_t to refcount_t perf thread: convert thread.refcnt from atomic_t to refcount_t perf thread_map: Convert thread_map.refcnt from atomic_t to refcount_t Jiri Olsa (2): perf tools: Force uncore events to system wide monitoring perf bench numa: Add more comment for -c option Karol Wachowski (1): perf vendor events: Add mapping for KnightsMill PMU events Namhyung Kim (4): perf ftrace: Add support for --pid option perf cpumap: Introduce cp
[GIT PULL 00/35] perf/core improvements and fixes
Hi Ingo, Please consider pulling, I first merged tip/perf/urgent into a tip/perf/core and rebased the patches I had in acme/perf/core. - Arnaldo Build stats at the end of this message. The following changes since commit ce90c12d2453aa6be743719bb0a5d4040b92700f: Merge branch 'perf/urgent' into perf/core, to pick up fixes before merging new changes (2016-08-23 15:35:47 -0300) are available in the git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git tags/perf-core-for-mingo-20160823 for you to fetch changes up to 5e30d55c71de058e4156080fe32d426c22d094cb: perf record: Fix spelling mistake "Finshed" -> "Finished" (2016-08-23 17:06:40 -0300) perf/core improvements and fixes: User visible: . Allow configuring the default 'perf report -s' sort order in ~/.perfconfig, for instance, "sym,dso" may be more fitting for kernel developers. (Arnaldo Carvalho de Melo) - Support x8/x16/x32/x64 hexadecimal "types" in ftrace and 'perf probe' (Masami Hiramatsu) Infrastructure: - Skip running the feature tests for 'make install-doc' (Rui Teng) - Introduce tools/include/linux/time64.h with *SEC_PER_*SEC macros to use in all of tools/ (Arnaldo Carvalho de Melo) - Break down symbol__disassemble() into multiple functions, to ease future work on better reporting the errors that may take place in the various steps it performs (possibly decompressing kernel module files, getting build-id keyed files, calling objdump, parsing its output, etc) (Arnaldo Carvalho de Melo) - Typo fixes in various places (Colin Ian King) - Remove superfluous NULL check in the TUI code (Colin Ian King) - Allow displaying multiple header lines in the TUI browser, prep work for the 'perf c2c' browser (Jiri Olsa) - Copy coresight-pmu.h header file needed by perf tools (Mathieu Poirier) - Use __weak definition from linux/compiler.h (Rui Teng) Signed-off-by: Arnaldo Carvalho de Melo Arnaldo Carvalho de Melo (16): tools: Introduce tools/include/linux/time64.h for *SEC_PER_*SEC macros perf bench numa: Use NSEC_PER_U?SEC perf sched: Use linux/time64.h perf timechart: Use NSEC_PER_U?SEC perf bench sched-pipe: Use linux/time64.h, USEC_PER_SEC perf stat: Use *SEC_PER_*SEC macros perf bench mem: Use USEC_PER_SEC perf bench sched-messaging: Use USEC_PER_MSEC perf record: Use USEC_PER_MSEC perf kvm: Use NSEC_PER_USEC perf bench futex: Use NSEC_PER_USEC perf top: Use MSEC_PER_SEC perf disassemble: Move check for kallsyms + !kcore perf disassemble: Simplify logic for picking the filename to disassemble perf disassemble: Extract logic to find file to pass to objdump to a separate function perf report: Allow configuring the default sort order in ~/.perfconfig Colin Ian King (5): perf hists browser: Remove superfluous null check on map perf tools: Fix typo: "ehough" -> "enough" perf test bpf: Fix typo: "ehough" -> "enough" perf bpf: Fix typo: "ehough" -> "enough" perf record: Fix spelling mistake "Finshed" -> "Finished" Jiri Olsa (5): perf hists: Introduce nr_header_lines into struct perf_hpp_list perf hists: Add line argument into perf_hpp_fmt's header callback perf tools tui: Display multiple header lines perf tools stdio: Display multiple header lines perf hists: Add support for header span Masami Hiramatsu (6): ftrace: kprobe: uprobe: Add x8/x16/x32/x64 for hexadecimal types ftrace: probe: Add README entries for k/uprobe-events perf probe: Add supported for type casting by the running kernel perf probe: Support hexadecimal casting perf probe: Use hexadecimal type by default if possible ftrace: kprobe: uprobe: Show u8/u16/u32/u64 types in decimal Mathieu Poirier (1): tools: Copy coresight-pmu.h header file needed by perf tools Rui Teng (2): perf tools: Use __weak definition from linux/compiler.h perf tools: Skip running the feature tests for 'make install-doc' Documentation/trace/kprobetrace.txt| 9 ++- Documentation/trace/uprobetracer.txt | 9 ++- kernel/trace/trace.c | 24 ++ kernel/trace/trace_kprobe.c| 4 + kernel/trace/trace_probe.c | 30 kernel/trace/trace_probe.h | 11 ++- kernel/trace/trace_uprobe.c| 4 + tools/include/linux/coresight-pmu.h| 39 ++ tools/include/linux/time64.h | 12 +++ tools/perf/Documentation/perf-config.txt | 4 + tools/perf/Documentation/perf-probe.txt| 5 +- tools/perf/MANIFEST| 2 + tools/perf/Makefile.perf | 5 +- tools
[GIT PULL 00/35] perf/core improvements and fixes
Hi Ingo, Please consider pulling, - Arnaldo Test results at the end of this message, as usual. The following changes since commit faaf95677f33dac910b6cbe917cabea43c8c1616: Merge branch 'perf/urgent' into perf/core, to pick up fixes (2017-12-18 18:13:00 +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-4.16-20171227 for you to fetch changes up to 5d4fd9c8b83b36d34521b3af361a5726899045bf: perf tools: Auto-complete for events with ':' (2017-12-27 12:16:00 -0300) perf/core improvements and fixes: - Allow system wide 'perf stat --per-thread', sorting the result (Jin Yao) E.g.: [root@jouet ~]# perf stat --per-thread --metrics IPC ^C Performance counter stats for 'system wide': make-9 23,012,094,032 inst_retired.any # 0.8 IPC cc1-22419 692,027,497 inst_retired.any # 0.8 IPC gcc-22418 328,231,855 inst_retired.any # 0.9 IPC cc1-22509 220,853,647 inst_retired.any # 0.8 IPC gcc-22486 199,874,810 inst_retired.any # 1.0 IPC as-22466 177,896,365 inst_retired.any # 0.9 IPC cc1-22465 150,732,374 inst_retired.any # 0.8 IPC gcc-22508 112,555,593 inst_retired.any # 0.9 IPC cc1-22487 108,964,079 inst_retired.any # 0.7 IPC qemu-system-x86-2697 21,330,550 inst_retired.any # 0.3 IPC systemd-journal-55120,642,951 inst_retired.any # 0.4 IPC docker-containe-17651 9,552,892 inst_retired.any # 0.5 IPC dockerd-current-98097,528,586 inst_retired.any # 0.5 IPC make-22153 12,504,194,380 inst_retired.any # 0.8 IPC python2-22429 12,081,290,954 inst_retired.any # 0.8 IPC python2-22429 15,026,328,103 cpu_clk_unhalted.thread cc1-22419 826,660,193 cpu_clk_unhalted.thread gcc-22418 365,321,295 cpu_clk_unhalted.thread cc1-22509 279,169,362 cpu_clk_unhalted.thread gcc-22486 210,156,950 cpu_clk_unhalted.thread 5.638075538 seconds time elapsed [root@jouet ~]# - Improve shell auto-completion of perf events (Jin Yao) - Fix symbol fixup issues in arm64 due to ELF type (Kim Phillips) - Ignore threads when they vanish after procfs based enumeration and before we try to use them with sys_perf_event_open(), i.e. just remove them from the thread_map and continue with the rest. This makes, among other cases, the previous new feature (perf stat --per-thread for system wide, albeit that not seeming to be the motivation for this patch) more robust. (Mengting Zhang) - Generate s390 syscall table from asm/unistd.h, doing like x86, removing the dependency on audit-libs to do this id->string translation, speeding up the support for newly introducted syscalls (Hendrik Brueckner) - Fix 'perf test' on filesystems where readdir() returns d_type == DT_UNKNOWN, such as XFS (Jiri Olsa) - Fix PERF_SAMPLE_RAW_DATA endianity handling for cross-arch tracepoint processing (Jiri Olsa) - Add __return suffix for return events in 'perf probe', streamlining entry/exit tracing (Masami Hiramatsu) - Improve support for versioned symbols in 'perf probe" (Masami Hiramatsu) - Clarify error message about invalid 'perf probe' event names (Masami Hiramatsu) - Fix check open filename arg using 'perf trace' in a 'perf test' entry for systems using glibc >= 2.26, such as some ARM and s390 distros (Michael Petlan) - Make method for obtaining the (normalized) architecture id for a perf.data file or for the running system used by the annotation routines generally available, next user will be for generating per arch errno string tables to allow for pretty printing errno codes recorded in a perf.data file in architecture A to be properly decoded on hardware archictecture B. (Arnaldo Carvalho de Melo) - Remove duplicate includes, found using scripts/checkincludes.pl (Pravin Shedge) - s390 needs -fPIC, enable it, also revert a patch that supposedly did that but instead enabled -fPIC for x86 (Hendrik Brueckner, Arnaldo Carvalho de Melo) Signed-off-by: Arnaldo Carvalho de Melo Arnaldo Carvalho de Melo (4): perf annotate: Get the cpuid from evsel->evlist->env in symbol__annotate() perf annotate: Use perf_env when obtaining the arch name perf env: Adopt perf_env__arch() from the annotate code Revert "perf s390: Always build with -fPIC" Hendrik Brueckner (4): tools include s390: Grab a copy of arch/s390/include/uapi/asm/unistd.h perf s390: Generate system call table from asm/unistd.h perf trace: Use generated syscall table on s390 too perf s390: Always
Re: [GIT PULL 00/35] perf/core improvements and fixes
Em Fri, Dec 20, 2013 at 04:08:35PM -0300, Arnaldo Carvalho de Melo escreveu: > User visible changes: > > Improvements: > > . Do not show stats if workload fails in 'stat' (David Ahern) Hi Ingo, Please hold on, as reported elsewhere, the above change broke 'perf stat valid-workload', so I removed it from my tree. I'll resubmit soon with a bunch more, Thanks, - Arnaldo -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [GIT PULL 00/35] perf/core improvements and fixes
> On Aug 15, 2018, at 8:05 AM, Arnaldo Carvalho de Melo wrote: > > From: Arnaldo Carvalho de Melo > > Hi Ingo, > >Please consider pulling, this is on top of > perf-core-for-mingo-4.19-20180809, that is not yet in tip. > > Thanks, > > - Arnaldo > > Test results at the end of this message, as usual. > > The following changes since commit 6a9405b56c274024564f9014bba97b92c91b34d6: > > perf map: Optimize maps__fixup_overlappings() (2018-08-08 15:56:00 -0300) > > are available in the Git repository at: > > git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git > tags/perf-core-for-mingo-4.19-20180815 > > for you to fetch changes up to 6855dc41b24619c3d1de3dbd27dd0546b0e45272: > > x86: Add entry trampolines to kcore I don’t object per se, but once I finish rebasing and testing my entry trampoline removal code, this will probably have to go.
Re: [GIT PULL 00/35] perf/core improvements and fixes
* Arnaldo Carvalho de Melo wrote: > From: Arnaldo Carvalho de Melo > > Hi Ingo, > > Please consider pulling, this is on top of > perf-core-for-mingo-4.19-20180809, that is not yet in tip. > > Thanks, > > - Arnaldo > > Test results at the end of this message, as usual. > > The following changes since commit 6a9405b56c274024564f9014bba97b92c91b34d6: > > perf map: Optimize maps__fixup_overlappings() (2018-08-08 15:56:00 -0300) > > are available in the Git repository at: > > git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git > tags/perf-core-for-mingo-4.19-20180815 > > for you to fetch changes up to 6855dc41b24619c3d1de3dbd27dd0546b0e45272: > > x86: Add entry trampolines to kcore (2018-08-14 19:13:26 -0300) > > > perf/core improvements ad fixes: > > kernel: > > . kallsyms, x86: Export addresses of PTI entry trampolines (Alexander > Shishkin) > > . kallsyms: Simplify update_iter_mod() (Adrian Hunter) > > . x86: Add entry trampolines to kcore (Adrian Hunter) > > Hardware tracing: > > . Fix auxtrace queue resize (Adrian Hunter) > > Arch specific: > > . Fix uninitialized ARM SPE record error variable (Kim Phillips) > > . Fix trace event post-processing in powerpc (Sandipan Das) > > Build: > > . Fix check-headers.sh AND list path of execution (Alexander Kapshuk) > > . Remove -mcet and -fcf-protection when building the python binding > with older clang versions (Arnaldo Carvalho de Melo) > > . Make check-headers.sh check based on kernel dir (Jiri Olsa) > > . Move syscall_64.tbl check into check-headers.sh (Jiri Olsa) > > Infrastructure: > > . Check for null when copying nsinfo. (Benno Evers) > > Libraries: > > . Rename libtraceevent prefixes, prep work for making it a shared > library generaly available (Tzvetomir Stoyanov (VMware)) > > Signed-off-by: Arnaldo Carvalho de Melo > > > Adrian Hunter (3): > perf auxtrace: Fix queue resize > kallsyms: Simplify update_iter_mod() > x86: Add entry trampolines to kcore > > Alexander Kapshuk (1): > perf tools: Fix check-headers.sh AND list path of execution > > Alexander Shishkin (1): > kallsyms, x86: Export addresses of PTI entry trampolines > > Arnaldo Carvalho de Melo (1): > perf python: Remove -mcet and -fcf-protection when building with clang > > Benno Evers (1): > perf tools: Check for null when copying nsinfo. > > Jiri Olsa (2): > perf tools: Make check-headers.sh check based on kernel dir > perf tools: Move syscall_64.tbl check into check-headers.sh > > Kim Phillips (1): > perf arm spe: Fix uninitialized record error variable > > Sandipan Das (1): > perf probe powerpc: Fix trace event post-processing > > Tzvetomir Stoyanov (VMware) (24): > tools lib traceevent, perf tools: Rename struct pevent to struct > tep_handle > tools lib traceevent, perf tools: Rename 'struct pevent_record' to > 'struct tep_record' > tools lib traceevent, perf tools: Rename pevent plugin related APIs > tools lib traceevent, perf tools: Rename pevent alloc / free APIs > tools lib traceevent, perf tools: Rename pevent find APIs > tools lib traceevent, perf tools: Rename pevent parse APIs > tools lib traceevent, perf tools: Rename pevent print APIs > tools lib traceevent, perf tools: Rename pevent_read_number_* APIs > tools lib traceevent, perf tools: Rename pevent_register_* APIs > tools lib traceevent, perf tools: Rename pevent_set_* APIs > tools lib traceevent, perf tools: Rename traceevent_* APIs > tools lib traceevent, perf tools: Rename 'enum pevent_flag' to 'enum > tep_flag' > tools lib traceevent, tools lib lockdep: Rename 'enum pevent_errno' to > 'enum tep_errno' > tools lib traceevent: Rename pevent_function* APIs > tools lib traceevent, perf tools: Rename traceevent_plugin_* APIs > tools lib traceevent: Rename pevent_filter* APIs > tools lib traceevent: Rename pevent_register / unregister APIs > tools lib traceevent: Rename pevent_data_ APIs > tools lib traceevent: Rename pevent field APIs > tools lib traceevent: Rename pevent_find_* APIs > tools lib traceevent: Rename various pevent get/set/is APIs > tools lib traceevent: Rename internal parser related APIs > tools lib traceevent: Rename various pevent APIs > tools lib traceevent: Rename static variables and functions in > event-parse.c > > arch/x86/mm/cpu_entry_area.c | 33 + > fs/proc/kcore.c| 7 +- > include/linux/kcore.h | 13 + > kernel/kallsyms.c | 51 +- > tools/lib/lockdep/Makefile | 4 +- > tools/lib/traceevent/Makefile | 4 +- > tools/lib/tr
Re: [GIT PULL 00/35] perf/core improvements and fixes
* Arnaldo Carvalho de Melo wrote: > From: Arnaldo Carvalho de Melo > > Hi Ingo, > > Please consider pulling, > > - Arnaldo > > Test results at the end of this message, as usual. > > The following changes since commit 9d020d33fc1b2faa0eb35859df1381ca5dc94ffe: > > Merge branch 'linus' into perf/urgent, to resolve conflict (2017-03-02 > 08:05:45 +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-4.11-20170306 > > for you to fetch changes up to 001916b94a04809a94abb07daba6f9ace01906ba: > > perf bench numa: Add more comment for -c option (2017-03-06 12:39:30 -0300) > > > perf/core improvements and fixes: > > New features: > > - Allow sorting by symbol_size in 'perf report' and 'perf top' (Charles > Baylis) > > E.g.: > > # perf report -s symbol_size,symbol > > Samples: 9K of event 'cycles:k', Event count (approx.): 2870461623 > Overhead Symbol size Symbol > 14.55% 326 [k] flush_tlb_mm_range > 7.20% 1045 [k] filemap_map_pages > 5.82% 124 [k] vma_interval_tree_insert > 5.18% 2430 [k] unmap_page_range > 2.57% 571 [k] vma_interval_tree_remove > 1.94% 494 [k] page_add_file_rmap > 1.82% 740 [k] page_remove_rmap > 1.66% 1017 [k] release_pages > 1.57% 1636 [k] update_blocked_averages > 1.57% 76 [k] unlock_page > > - Add support for -p/--pid, -a/--all-cpus and -C/--cpu in 'perf ftrace' > (Namhyung Kim) > > Change in behaviour: > > - Make system wide (-a) the default option if no target was specified and one > of following conditions is met: > > - No workload specified (current behaviour) > > - A workload is specified but all requested events are system wide ones, > like uncore ones. (Jiri Olsa) > > Fixes: > > - Add missing initialization to the instruction decoder used in the > intel PT/BTS code, which was causing lots of failures in 'perf test', > looking for a value when there was none (Adrian Hunter) > > Infrastructure: > > - Add arch code needed to adopt the kernel's refcount_t to aid in > catching bugs when using atomic_t as a reference counter, basically > cmpxchg related functions (Arnaldo Carvalho de Melo) > > - Convert the code using atomic_t as reference counts to refcount_t > (Elena Rashetova) > > - Add feature test for sched_getcpu() to more easily check for its > presence in the many libc implementations and accross different > versions of such C libraries (Arnaldo Carvalho de Melo) > > - Issue a HW watchdog disable hint in 'perf stat' for when some of the > requested events can't get counted because a PMU counter is taken by that > watchdog (Borislav Petkov). > > - Add mapping for Intel's KnightsMill PMU events (Karol Wachowski) > > Documentation: > > - Clarify the term 'convergence' in: > >perf bench numa numa-mem -h --show_convergence (Jiri Olsa) > > Kernel code: > > - Ensure probe location is at function entry in kretprobes (Naveen N. Rao) > > - Allow return probes with offsets and absolute addresses (Naveen N. Rao) > > Signed-off-by: Arnaldo Carvalho de Melo > > > Adrian Hunter (1): > perf intel-PT/BTS: Add missing initialization > > Arnaldo Carvalho de Melo (12): > tools include: Adopt __compiletime_error > tools arch x86: Include asm/cmpxchg.h > tools arch x86: Introduce atomic_cmpxchg() > tools include: Introduce atomic_cmpxchg_{relaxed,release}() > tools include: Provide gcc based cmpxchg fallback for !x86 > tools include: Add UINT_MAX def to kernel.h > tools include: Adopt kernel's refcount.h > perf evlist: Clarify a bit the use of perf_mmap->refcnt > tools build: Add test for sched_getcpu() > perf bench futex: Use __maybe_unused > perf bench futex: Fix build on musl + clang > tools build: Use the same CC for feature detection and actual build > > Borislav Petkov (1): > perf stat: Issue a HW watchdog disable hint > > Charles Baylis (1): > perf tools: Allow sorting by symbol size > > Elena Reshetova (9): > perf cgroup: Convert cgroup_sel.refcnt from atomic_t to refcount_t > perf cpumap: Convert cpu_map.refcnt from atomic_t to refcount_t > perf comm: Convert comm_str.refcnt from atomic_t to refcount_t > perf dso: Convert dso.refcnt from atomic_t to refcount_t > perf map: Convert map.refcnt from atomic_t to refcount_t > perf map: Convert map_groups.refcnt from atomic_t to refcount_t > perf evlist: Convert perf_map.refcnt from atomic_t to refcount_t > perf thread: convert thread.refcnt from atomic_t to refcount_t > perf thread_map: Convert thread_map.refcnt from atomic_t to refcount_t > > Jiri Ols
Re: [GIT PULL 00/35] perf/core improvements and fixes
* Arnaldo Carvalho de Melo wrote: > Hi Ingo, > > Please consider pulling, I first merged tip/perf/urgent into a > tip/perf/core and rebased the patches I had in acme/perf/core. > > - Arnaldo > > Build stats at the end of this message. > > The following changes since commit ce90c12d2453aa6be743719bb0a5d4040b92700f: > > Merge branch 'perf/urgent' into perf/core, to pick up fixes before merging > new changes (2016-08-23 15:35:47 -0300) > > are available in the git repository at: > > git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git > tags/perf-core-for-mingo-20160823 > > for you to fetch changes up to 5e30d55c71de058e4156080fe32d426c22d094cb: > > perf record: Fix spelling mistake "Finshed" -> "Finished" (2016-08-23 > 17:06:40 -0300) > > > perf/core improvements and fixes: > > User visible: > > . Allow configuring the default 'perf report -s' sort order in ~/.perfconfig, > for instance, "sym,dso" may be more fitting for kernel developers. (Arnaldo > Carvalho de Melo) > > - Support x8/x16/x32/x64 hexadecimal "types" in ftrace and 'perf probe' > (Masami Hiramatsu) > > Infrastructure: > > - Skip running the feature tests for 'make install-doc' (Rui Teng) > > - Introduce tools/include/linux/time64.h with *SEC_PER_*SEC macros > to use in all of tools/ (Arnaldo Carvalho de Melo) > > - Break down symbol__disassemble() into multiple functions, to ease > future work on better reporting the errors that may take place in > the various steps it performs (possibly decompressing kernel module > files, getting build-id keyed files, calling objdump, parsing its > output, etc) (Arnaldo Carvalho de Melo) > > - Typo fixes in various places (Colin Ian King) > > - Remove superfluous NULL check in the TUI code (Colin Ian King) > > - Allow displaying multiple header lines in the TUI browser, prep > work for the 'perf c2c' browser (Jiri Olsa) > > - Copy coresight-pmu.h header file needed by perf tools (Mathieu Poirier) > > - Use __weak definition from linux/compiler.h (Rui Teng) > > Signed-off-by: Arnaldo Carvalho de Melo > > > > Arnaldo Carvalho de Melo (16): > tools: Introduce tools/include/linux/time64.h for *SEC_PER_*SEC macros > perf bench numa: Use NSEC_PER_U?SEC > perf sched: Use linux/time64.h > perf timechart: Use NSEC_PER_U?SEC > perf bench sched-pipe: Use linux/time64.h, USEC_PER_SEC > perf stat: Use *SEC_PER_*SEC macros > perf bench mem: Use USEC_PER_SEC > perf bench sched-messaging: Use USEC_PER_MSEC > perf record: Use USEC_PER_MSEC > perf kvm: Use NSEC_PER_USEC > perf bench futex: Use NSEC_PER_USEC > perf top: Use MSEC_PER_SEC > perf disassemble: Move check for kallsyms + !kcore > perf disassemble: Simplify logic for picking the filename to disassemble > perf disassemble: Extract logic to find file to pass to objdump to a > separate function > perf report: Allow configuring the default sort order in ~/.perfconfig > > Colin Ian King (5): > perf hists browser: Remove superfluous null check on map > perf tools: Fix typo: "ehough" -> "enough" > perf test bpf: Fix typo: "ehough" -> "enough" > perf bpf: Fix typo: "ehough" -> "enough" > perf record: Fix spelling mistake "Finshed" -> "Finished" > > Jiri Olsa (5): > perf hists: Introduce nr_header_lines into struct perf_hpp_list > perf hists: Add line argument into perf_hpp_fmt's header callback > perf tools tui: Display multiple header lines > perf tools stdio: Display multiple header lines > perf hists: Add support for header span > > Masami Hiramatsu (6): > ftrace: kprobe: uprobe: Add x8/x16/x32/x64 for hexadecimal types > ftrace: probe: Add README entries for k/uprobe-events > perf probe: Add supported for type casting by the running kernel > perf probe: Support hexadecimal casting > perf probe: Use hexadecimal type by default if possible > ftrace: kprobe: uprobe: Show u8/u16/u32/u64 types in decimal > > Mathieu Poirier (1): > tools: Copy coresight-pmu.h header file needed by perf tools > > Rui Teng (2): > perf tools: Use __weak definition from linux/compiler.h > perf tools: Skip running the feature tests for 'make install-doc' > > Documentation/trace/kprobetrace.txt| 9 ++- > Documentation/trace/uprobetracer.txt | 9 ++- > kernel/trace/trace.c | 24 ++ > kernel/trace/trace_kprobe.c| 4 + > kernel/trace/trace_probe.c | 30 > kernel/trace/trace_probe.h | 11 ++- > kernel/trace/trace_uprobe.c| 4 + > tools/include/linux/coresight-pmu.h| 39 ++ > tools/include/linux/time64.
Re: [GIT PULL 00/35] perf/core improvements and fixes
* Arnaldo Carvalho de Melo wrote: > Hi Ingo, > > Please consider pulling, > > - Arnaldo > > > Test results at the end of this message, as usual. > > The following changes since commit faaf95677f33dac910b6cbe917cabea43c8c1616: > > Merge branch 'perf/urgent' into perf/core, to pick up fixes (2017-12-18 > 18:13:00 +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-4.16-20171227 > > for you to fetch changes up to 5d4fd9c8b83b36d34521b3af361a5726899045bf: > > perf tools: Auto-complete for events with ':' (2017-12-27 12:16:00 -0300) > > > perf/core improvements and fixes: > > - Allow system wide 'perf stat --per-thread', sorting the result (Jin Yao) > > E.g.: > > [root@jouet ~]# perf stat --per-thread --metrics IPC > ^C >Performance counter stats for 'system wide': > > make-9 23,012,094,032 inst_retired.any # 0.8 IPC >cc1-22419 692,027,497 inst_retired.any # 0.8 IPC >gcc-22418 328,231,855 inst_retired.any # 0.9 IPC >cc1-22509 220,853,647 inst_retired.any # 0.8 IPC >gcc-22486 199,874,810 inst_retired.any # 1.0 IPC > as-22466 177,896,365 inst_retired.any # 0.9 IPC >cc1-22465 150,732,374 inst_retired.any # 0.8 IPC >gcc-22508 112,555,593 inst_retired.any # 0.9 IPC >cc1-22487 108,964,079 inst_retired.any # 0.7 IPC >qemu-system-x86-2697 21,330,550 inst_retired.any # 0.3 IPC >systemd-journal-55120,642,951 inst_retired.any # 0.4 IPC >docker-containe-17651 9,552,892 inst_retired.any # 0.5 IPC >dockerd-current-98097,528,586 inst_retired.any # 0.5 IPC > make-22153 12,504,194,380 inst_retired.any # 0.8 IPC >python2-22429 12,081,290,954 inst_retired.any # 0.8 IPC > >python2-22429 15,026,328,103 cpu_clk_unhalted.thread >cc1-22419 826,660,193 cpu_clk_unhalted.thread >gcc-22418 365,321,295 cpu_clk_unhalted.thread >cc1-22509 279,169,362 cpu_clk_unhalted.thread >gcc-22486 210,156,950 cpu_clk_unhalted.thread > > >5.638075538 seconds time elapsed > > [root@jouet ~]# > > - Improve shell auto-completion of perf events (Jin Yao) > > - Fix symbol fixup issues in arm64 due to ELF type (Kim Phillips) > > - Ignore threads when they vanish after procfs based enumeration and > before we try to use them with sys_perf_event_open(), i.e. just remove > them from the thread_map and continue with the rest. This makes, among > other cases, the previous new feature (perf stat --per-thread for system > wide, albeit that not seeming to be the motivation for this patch) more > robust. (Mengting Zhang) > > - Generate s390 syscall table from asm/unistd.h, doing like x86, > removing the dependency on audit-libs to do this id->string translation, > speeding up the support for newly introducted syscalls (Hendrik Brueckner) > > - Fix 'perf test' on filesystems where readdir() returns d_type == DT_UNKNOWN, > such as XFS (Jiri Olsa) > > - Fix PERF_SAMPLE_RAW_DATA endianity handling for cross-arch tracepoint > processing (Jiri Olsa) > > - Add __return suffix for return events in 'perf probe', streamlining > entry/exit tracing (Masami Hiramatsu) > > - Improve support for versioned symbols in 'perf probe" (Masami Hiramatsu) > > - Clarify error message about invalid 'perf probe' event names (Masami > Hiramatsu) > > - Fix check open filename arg using 'perf trace' in a 'perf test' entry for > systems using glibc >= 2.26, such as some ARM and s390 distros (Michael > Petlan) > > - Make method for obtaining the (normalized) architecture id for a > perf.data file or for the running system used by the annotation routines > generally available, next user will be for generating per arch errno > string tables to allow for pretty printing errno codes recorded in a > perf.data file in architecture A to be properly decoded on hardware > archictecture B. (Arnaldo Carvalho de Melo) > > - Remove duplicate includes, found using scripts/checkincludes.pl (Pravin > Shedge) > > - s390 needs -fPIC, enable it, also revert a patch that supposedly did > that but instead enabled -fPIC for x86 (Hendrik Brueckner, Arnaldo Carvalho > de Melo) > > Signed-off-by: Arnaldo Carvalho de Melo > > > Arnaldo Carvalho de Melo (4): > perf annotate: Get the cpuid from evsel->evlist->env in > symbol__annotate() > perf annotate: Use perf_env when obtaining the arch name > perf env: Adopt perf_env__arch() from the annotate code > Revert "perf s390:
Re: [GIT PULL 00/35] perf/core improvements and fixes
* Arnaldo Carvalho de Melo wrote: > Hi Ingo, > > Please consider pulling, > > - Arnaldo > > Test results at the end of this message, as usual. > > The following changes since commit c978b9460fe1d4a1e1effa0abd6bd69b18a098a8: > > Merge tag 'perf-core-for-mingo-5.1-20190225' of > git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/core > (2019-02-28 08:29:50 +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-5.1-20190307 > > for you to fetch changes up to b8f7d86b5849ea7bb84bddc0345a3799049764d4: > > perf data: Force perf_data__open|close zero data->file.path (2019-03-06 > 18:21:00 -0300) > > > perf bpf: > > Arnaldo Carvalho de Melo: > > - Automatically add BTF ELF markers to 'perf trace' BPF programs, so that > tools such as 'bpftool map dump' can pretty print map keys and values. > > perf c2c: > > Jiri Olsa: > > - Fix report for empty NUMA node. > > perf diff: > > Jin Yao: > > - Support --time, --cpu, --pid and --tid filter options. > > perf probe: > > Arnaldo Carvalho de Melo: > > - Clarify error message about not finding kernel modules debuginfo. > > perf record: > > Jiri Olsa: > > - Fixup probing for max attr.precise_ip. > > perf trace: > > Arnaldo Carvalho de Melo: > > - Add missing %s lost in the 'msg_flags' recvmmsg arg when adding prefix > suppression logic. > > perf annotate: > > Arnaldo Carvalho de Melo: > > - Calculate the max instruction name, align column to that, removing the > hardcoded max 6 chars and cope with instructions with names longer than > that, > such as vpmovmskb, vpcmpeqb, etc. > > kernel: > > Song Liu: > > - Consider events with attr.bpf_event set as side-band. > > Gustavo A. R. Silva: > > - Mark expected switch fall-through in perf_event_parse_addr_filter(). > > Libraries: > > Jiri Olsa: > > - Fix leaks and double frees on error paths. > > libtraceevent: > > Tony Jones: > > - Fix buffer overflow in arg_eval(). > > python scripting: > > Tony Jones: > > - More python3 fixes. > > Trivial: > > Yang Wei: > > - Remove needless extra semicolon in clang C++ glue code. > > Intel PT/BTS: > > Adrian Hunter: > > - Improve auxtrace address filter error message when there is no DSO. > > - Fix divide by zero when TSC is not available. > > - Further improvements to the export to sqlite/posgresql python scripts > and to the GUI sqlviewer, exporting 'parent_id' so that we have enable > the creation of call trees. > > Andi Kleen: > > - Generalize function to copy from thread addr space from intel-bts code. > > Signed-off-by: Arnaldo Carvalho de Melo > > > Adrian Hunter (10): > perf auxtrace: Improve address filter error message when there is no DSO > perf intel-pt: Fix divide by zero when TSC is not available > perf db-export: Add calls parent_id to enable creation of call trees > perf scripts python: export-to-sqlite.py: Export calls parent_id > perf scripts python: export-to-postgresql.py: Fix invalid input syntax > for integer error > perf scripts python: export-to-postgresql.py: Export calls parent_id > perf scripts python: exported-sql-viewer.py: Factor out TreeWindowBase > perf scripts python: exported-sql-viewer.py: Improve TreeModel > abstraction > perf scripts python: exported-sql-viewer.py: Factor out > CallGraphModelBase > perf scripts python: exported-sql-viewer.py: Add call tree > > Andi Kleen (1): > perf thread: Generalize function to copy from thread addr space from > intel-bts code > > Arnaldo Carvalho de Melo (4): > perf probe: Clarify error message about not finding kernel modules > debuginfo > perf beauty msg_flags: Add missing %s lost when adding prefix > suppression logic > perf bpf: Automatically add BTF ELF markers > perf annotate: Calculate the max instruction name, align column to that > > Gustavo A. R. Silva (1): > perf: Mark expected switch fall-through > > Jin Yao (4): > perf time-utils: Refactor time range parsing code > perf diff: Support --time filter option > perf diff: Support --cpu filter option > perf diff: Support --pid/--tid filter options > > Jiri Olsa (7): > perf c2c: Fix c2c report for empty numa node > perf hist: Add error path into hist_entry__init > perf hist: Fix memory leak of srcline > perf tools: Read and store caps/max_precise in perf_pmu > perf evsel: Probe for precise_ip with simple attr > perf session: Fix double free in perf_data__close > perf data: Force perf_data__open|close zero data->file.path > > Song Liu (1): > perf, bpf: Consider events with attr.bpf_event as side-band e