[GIT PULL] perf changes for v4.2

From: Ingo Molnar
Date: Mon Jun 22 2015 - 03:56:49 EST


Please pull the latest perf-core-for-linus git tree from:

git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git perf-core-for-linus

# HEAD: a9a3cd900fbbcbf837d65653105e7bfc583ced09 Merge tag 'perf-core-for-mingo' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/core

Kernel side changes mostly consist of work on x86 PMU drivers:

- x86 Intel PT (hardware CPU tracer) improvements (Alexander Shishkin)

- x86 Intel CQM (cache quality monitoring) improvements (Thomas Gleixner)

- x86 Intel PEBSv3 support (Peter Zijlstra)

- x86 Intel PEBS interrupt batching support for lower overhead sampling
(Zheng Yan, Kan Liang)

- x86 PMU scheduler fixes and improvements (Peter Zijlstra)

There's too many tooling improvements to list them all - here are a few select

'perf bench':

- Introduce new 'perf bench futex' benchmark: 'wake-parallel', to
measure parallel waker threads generating contention for kernel
locks (hb->lock). (Davidlohr Bueso)

'perf top', 'perf report':

- Allow disabling/enabling events dynamicaly in 'perf top':
a 'perf top' session can instantly become a 'perf report'
one, i.e. going from dynamic analysis to a static one,
returning to a dynamic one is possible, to toogle the
modes, just press 'f' to 'freeze/unfreeze' the sampling. (Arnaldo Carvalho de Melo)

- Make Ctrl-C stop processing on TUI, allowing interrupting the load of big
perf.data files (Namhyung Kim)

'perf probe': (Masami Hiramatsu)

- Support glob wildcards for function name
- Support $params special probe argument: Collect all function arguments
- Make --line checks validate C-style function name.
- Add --no-inlines option to avoid searching inline functions
- Greatly speed up 'perf probe --list' by caching debuginfo.
- Improve --filter support for 'perf probe', allowing using its arguments
on other commands, as --add, --del, etc.

'perf sched':

- Add option in 'perf sched' to merge like comms to lat output (Josef Bacik)

Plus tons of infrastructure work - in particular preparation for upcoming threaded
perf report support, but also lots of other work - and fixes and other
improvements. See (much) more details in the shortlog and in the git log.



Adrian Hunter (40):
perf header: Add AUX area tracing feature
perf evlist: Add support for mmapping an AUX area buffer
perf tools: Add user events for AUX area tracing
perf auxtrace: Add support for AUX area recording
perf record: Add basic AUX area tracing support
perf record: Extend -m option for AUX area tracing mmap pages
perf tools: Add a user event for AUX area tracing errors
perf session: Add hooks to allow transparent decoding of AUX area tracing data
perf session: Add instruction tracing options
perf auxtrace: Add helpers for AUX area tracing errors
perf auxtrace: Add helpers for queuing AUX area tracing data
perf auxtrace: Add a heap for sorting AUX area tracing queues
perf auxtrace: Add processing for AUX area tracing events
perf auxtrace: Add a hashtable for caching
perf tools: Add member to struct dso for an instruction cache
perf script: Add Instruction Tracing support
perf inject: Re-pipe AUX area tracing events
perf inject: Add Instruction Tracing support
perf script: Add field option 'flags' to print sample flags
perf tools: Add aux_watermark member of struct perf_event_attr
perf evlist: Amend mmap ref counting for the AUX area mmap
perf script: Always allow fields 'addr' and 'cpu' for auxtrace
perf report: Add Instruction Tracing support
perf report: Fix placement of itrace option in documentation
perf tools: Add AUX area tracing index
perf tools: Hit all build ids when AUX area tracing
perf tools: Add build option NO_AUXTRACE to exclude AUX area tracing
perf auxtrace: Add option to synthesize events for transactions
perf tools: Add support for PERF_RECORD_AUX
perf tools: Add support for PERF_RECORD_ITRACE_START
perf tools: Add AUX area tracing Snapshot Mode
perf record: Add AUX area tracing Snapshot Mode support
perf tools: Fix function declarations needed by parse-events.y
perf tools: Fix parse_events_error dereferences
perf build: Fix libunwind feature detection on 32-bit x86
perf session: Fix perf_session__peek_event()
perf tools: Disallow PMU events intel_pt and intel_bts until there is support
perf db-export: Fix thread ref-counting
perf evsel: Display 0x for hex values when printing the attribute
perf tools: Ensure thread-stack is flushed

Alexander Shishkin (5):
perf/x86/intel/pt: Kill an unused variable
perf/x86/intel/pt: Document pt_buffer_reset_markers()
perf/x86/intel/pt: Document pt_buffer_reset_offsets()
perf/x86/intel/pt: Kill pt_is_running()
perf/x86/intel/pt: Remove redundant variable declaration

Ananth N Mavinakayanahalli (1):
perf probe ppc64le: Fix ppc64 ABIv2 symbol decoding

Andi Kleen (3):
perf stat: Fix metrics calculation with event qualifiers
perf annotation: Add symbol__get_annotation
perf tools: Move branch option parsing to own file

Arnaldo Carvalho de Melo (64):
perf trace: Fix --filter-pids OPTION description
perf trace: Clarify that -e is about syscalls, not perf events in general
perf tools: Move x86 barrier.h stuff to tools/arch/x86/include/asm/barrier.h
perf tools: Move powerpc barrier.h stuff to tools/arch/powerpc/include/asm/barrier.h
perf tools: Move s390 barrier.h stuff to tools/arch/s390/include/asm/barrier.h
perf tools: Move barrier() definition to tools/include/linux/compiler.h
tools: Adopt asm-generic/barrier.h
perf tools: Move sh barrier.h stuff to tools/arch/sh/include/asm/barrier.h
perf tools: Move sparc barrier.h stuff to tools/arch/sparc/include/asm/barrier.h
perf tools: Move alpha barrier.h stuff to tools/arch/alpha/include/asm/barrier.h
perf tools: Move ia64 barrier.h stuff to tools/arch/ia64/include/asm/barrier.h
perf tools: Move arm(64) barrier.h stuff to tools/arch/arm*/include/asm/barrier.h
perf tools: Move xtensa barrier.h stuff to tools/arch/xtensa/include/asm/barrier.h
perf tools: Move mips barrier.h stuff to tools/arch/mips/include/asm/barrier.h
perf tools: Move tile barrier.h stuff to tools/arch/tile/include/asm/barrier.h
perf tools: Move generic barriers out of perf-sys.h
tools include: Add basic atomic.h implementation from the kernel sources
perf tools: Use atomic_t to implement thread__{get,put} refcnt
perf machine: Protect the machine->threads with a rwlock
perf kmem: Fix compiler warning about may be accessing uninitialized variable
perf tests: Show refcounting broken expectations in thread-mg-share test
perf machine: No need to keep a refcnt for last_match
perf tests: Fix map_groups refcount test
tools lib traceevent: Provide le16toh define for older systems
perf trace: Fix the build on older distros
perf tools: Use atomic.h for the map_groups refcount
perf machine: Stop accessing atomic_t::counter directly
perf evlist: Use atomic.h for the perf_mmap refcount
perf cgroup: Use atomic.h for refcounting
perf tools: Elliminate alignment holes
perf bench numa: Share sched_getcpu() __weak def with cloexec.c
perf hists: Rename add_hist_entry to hists__findnew_entry
perf comm: Use atomic.h for refcounting
perf machine: Do not call map_groups__delete(), drop refcnt instead
perf tools: Rename maps__next
perf tools: Remove redundant initialization of thread linkage members
perf tools: Nuke unused map_groups__flush()
perf tools: Import rb_erase_init from block/ in the kernel sources
perf machine: Mark removed threads as such
perf tools: Leave DSO destruction to the map destruction
perf tools: Use maps__first()/map__next()
perf tools: Introduce struct maps
perf tools: Protect accesses the map rbtrees with a rw lock
perf tools: Check if a map is still in use when deleting it
perf tools: Reference count struct map
perf kmem: Fix compiler warning about may be accessing uninitialized variable
perf machine: Adopt findnew_kernel method
perf machine: No need to have two DSOs lists
perf machine: Introduce machine__findnew_dso() method
perf machine: Fix up vdso methods names
perf machine: Fix the search for the kernel DSO on the unified list
perf machine: Fix up some more method names
perf tools: Protect accesses the dso rbtrees/lists with a rw lock
perf tools: Reference count struct dso
trace: Beautify perf_event_open syscall
perf tools: Replace map->referenced & maps->removed_maps with map->refcnt
perf evlist: Add toggle_enable() method
perf top: Allow disabling/enabling events dynamicly
perf annotate: Rename source_line_percent to source_line_samples
perf top: Replace CTRL+z with 'f' as hotkey for enable/disable events
perf hists browser: Do not exit when 'f' is pressed in 'report' mode
perf hists browser: Honour the help line provided by builtin-{top,report}.c
perf top: Tell the user how to unfreeze events after pressing 'f'
perf hists browser: React to unassigned hotkey pressing

David Ahern (2):
perf kmem: Fix compiles on RHEL6/OL6
perf tools: Update MANIFEST per files removed from kernel

Davidlohr Bueso (2):
perf bench futex: Support parallel waker threads
perf bench futex: Handle spurious wakeups

He Kuang (10):
perf data: Show error message when conversion failed
perf trace: Removed duplicated NULL test
perf probe: Remove length limitation for showing available variables
perf probe: Add --range option to show a variable's location range
perf probe: Show better error message when failed to find variable
perf tests: Fix to get negative exit codes
tools lib traceevent: Export dynamic symbols used by traceevent plugins
tools lib traceevent: Ignore libtrace-dynamic-list file
perf record: Fix perf.data size in no-buildid mode
perf tools: Fix build failure on 32-bit arch

Hou Pengyang (1):
perf unwind: Fix a compile error

Jiri Olsa (37):
tools lib traceevent: Add alias field to struct format_field
tools build: No need to make libapi for perf explicitly
tools build: Fix Makefile(s) to properly invoke tools build
perf tests: Add build tests for building perf from kernel source root and tools
perf data: Enable stream flush within processing
perf data: Add support for setting ordered_events queue size
perf tools: Add parse_events_error interface
perf tools: Add flex support for parse_events_error
perf tools: Always bail out when config_attr function fails
perf tools: Change parse_events_add_pmu interface
perf tools: Add location to pmu event terms
perf tools: Add term support for parse_events_error
perf tools: Add static terms support for parse_events_error
perf tools: Add tracepoint support for parse_events_error
perf tools: Add symbolic events support for parse_events_error
perf stat: Change metrics context calculation
perf stat: Add metrics support for exclude_hv
perf stat: Add metrics support for exclude_(host|guest)
perf stat: Add metrics support for exclude_idle
perf tools: Make flex/bison calls honour V=1
perf tools: Fix dwarf-aux.c compilation on i386
perf tools: Fix "Command" sort_entry's cmp and collapse function
perf tools: Add hint for 'Too many events are opened.' error message
perf build: Do not fail on missing Build file
perf stat: Add id into perf_stat struct
perf stat: Replace transaction event possition check with id check
perf stat: Remove setup_events function
perf stat: Remove transaction_run from shadow update/print code
perf stat: Introduce reset_shadow_stats function
perf stat: Introduce print_shadow_stats function
perf stat: Add output file argument to print_shadow_stats function
perf stat: Add aggr_mode argument to print_shadow_stats function
perf stat: Move shadow stat counters into separate object
perf tools: Introduce xyarray__reset function
perf tools: Add thread_map__(alloc|realloc) helpers
perf tools: Move perf_evsel__(alloc|free|reset)_counts into stat object
perf stat: Introduce perf_counts__(new|delete|reset) functions

Josef Bacik (1):
perf sched: Add option to merge like comms to lat output

Kan Liang (5):
perf/x86/intel: Introduce PERF_RECORD_LOST_SAMPLES
perf tools: handle PERF_RECORD_LOST_SAMPLES
perf stat: Error out unsupported group leader immediately
perf tools: Add time out to force stop proc map processing
perf tools: Configurable per thread proc map processing time out

Madhavan Srinivasan (1):
perf tools: Remove newline char when reading event scale and unit

Martin Liska (1):
perf tools: Improve setting of gcc debug option

Martin LiÅka (3):
perf tools: Assign default value for some pointers
perf annotate: Fix -i option, which is currently ignored.
perf annotate: Display total number of samples with --show-total-period

Masami Hiramatsu (27):
perf probe: Make --funcs option exclusive
perf probe: Remove all probes matches given pattern at once
perf tools: Improve strfilter to append additional rules
perf tools: Add strfilter__string to recover rules string
perf probe: Accept multiple filter options
perf probe: Accept filter argument for --list
perf probe: Allow to use filter on --del command
perf probe: Accept filter argument for --funcs
perf probe: Remove redundant cleanup of params.filter
perf probe: Cleanup and consolidate command parsers
perf probe: Fix to close probe_events file in error
perf probe: Fix a typo for the flags of open
perf probe: Fix to return 0 when positive value returned
perf probe: Make --line checks validate C-style function name
perf probe: Skip kernel symbols which is out of .text
perf probe: Support $params special probe argument
perf probe: Use perf_probe_event.target instead of passing as an argument
perf probe: Introduce probe_conf global configs
perf probe: Add --no-inlines option to avoid searching inline functions
perf probe: Support glob wildcards for function name
perf probe: Show the error reason comes from invalid DSO
perf probe: Fix an error when deleting probes successfully
perf probe: Cut off the gcc optimization postfixes from function name
perf probe: List probes in stdout
perf probe: Fix to return error if no probe is added
perf probe: Show usage even if the last event is skipped
perf probe: Speed up perf probe --list by caching debuginfo

Matt Fleming (1):
perf/x86/intel/cqm: Use 'u32' data type for RMIDs

Michael Ellerman (1):
perf_event: Don't allow vmalloc() backed perf on powerpc

Milos Vyletel (1):
perf tools: Avoid possible race condition in copyfile()

Nam T. Nguyen (1):
perf tools: Separate the tests and tools in installation

Namhyung Kim (35):
perf hists: Get rid of position field from struct hist_entry
perf diff: Make hist_entry_diff fields union
perf tools: Document --children option in more detail
perf tools: Fix bison-related build failure on CentOS 6
perf kmem: Implement stat --page --caller
perf kmem: Support sort keys on page analysis
perf kmem: Add --live option for current allocation stat
perf kmem: Print gfp flags in human readable string
perf kmem: Add kmem.default config option
perf kmem: Show warning when trying to run stat without record
perf tools: Move TUI-specific fields into unnamed union
perf tools: Move init_have_children field to the unnamed union
perf hists browser: Fix possible memory leak
perf hists browser: Save hist_browser_timer pointer in hist_browser
perf hists browser: Save pstack in the hist_browser
perf hists browser: Save perf_session_env in the hist_browser
perf hists browser: Split popup menu actions
perf hists browser: Split popup menu actions - part 2
perf tools: Introduce pstack_peek()
perf hists browser: Simplify zooming code using pstack_peek()
perf tools: Move TUI-specific fields out of map_symbol
perf tools: Document relation of per-thread event count feature
perf report: Force tty output if -T/--thread option is given
perf report: Do not restrict -T option by other options
perf report: Fix some option handling on --stdio
perf tools: Add rm_rf() utility function
perf tools: Introduce copyfile_offset() function
perf symbols: Protect dso symbol loading using a mutex
perf symbols: Protect dso cache tree using dso->lock
perf tools: Protect dso cache fd with a mutex
perf hists: Reducing arguments of hist_entry_iter__add()
perf tools: Fix dso__data_read_offset() file opening
perf tools: Get rid of dso__data_fd() from dso__data_size()
perf tools: Add dso__data_get/put_fd()
perf tools: Make Ctrl-C stop processing on TUI

Naveen N. Rao (9):
perf probe ppc: Fix symbol fixup issues due to ELF type
perf probe ppc: Use the right prefix when ignoring SyS symbols on ppc
perf probe ppc: Enable matching against dot symbols automatically
perf probe ppc64le: Prefer symbol table lookup over DWARF
perf probe ppc64le: Fixup function entry if using kallsyms lookup
perf symbols: Warn on build id mismatch
perf probe: Improve detection of file/function name in the probe pattern
perf build: Disable libdw DWARF unwind when built with NO_DWARF
perf probe: Ignore tail calls to probed functions

Paul Mackerras (1):
perf: Remove myself from MAINTAINERS entry

Peter Zijlstra (12):
perf: Fix software migrate events
perf/x86/intel: Correct local vs remote sibling state
perf/x86/intel: Add lockdep assert
perf/x86/intel: Simplify the dynamic constraint code somewhat
perf/x86/intel: Make WARN()ings consistent
perf/x86/intel: Clean up intel_commit_scheduling() placement
perf/x86/intel: Remove pointless tests
perf/x86/intel: Remove intel_excl_states::init_state
perf/x86: Simplify the x86_schedule_events() logic
perf/x86/intel: Simplify put_exclusive_constraints()
perf/x86/intel/pebs: Add PEBSv3 decoding
perf record: Amend option summaries

Petr Holasek (1):
perf bench numa: Show more stats of particular threads in verbose mode

Riku Voipio (3):
perf tests: Switch from open to openat
perf tests: Aename open*.c to openat*.c
perf tests: Remove getpgrp from mmap-basic

Sebastian Andrzej Siewior (1):
perf data: Switch to multiple cpu stream files

Stephane Eranian (4):
perf/x86/intel/uncore: Add Broadwell-U uncore IMC PMU support
perf: add new PERF_SAMPLE_BRANCH_IND_JUMP branch sample type
perf/x86/intel: add support for PERF_SAMPLE_BRANCH_IND_JUMP
perf record: Add support for sampling indirect jumps

Sukadev Bhattiprolu (1):
perf trace: Fix race condition at the end of started workloads

Thomas Gleixner (6):
perf/x86/intel/cqm: Document PQR MSR abuse
perf/x86/intel/cqm: Use proper data types
perf/x86/intel/cqm: Remove pointless spinlock from state cache
perf/x86/intel/cqm: Avoid pointless MSR write
perf/x86/intel/cqm: Remove useless wrapper function
perf/x86/intel/cqm: Add storage for 'closid' and clean up 'struct intel_pqr_state'

Wang Nan (17):
perf data: Fix duplicate field names and avoid reserved keywords
perf data: Fix signedness of value
perf probe: Load map before glob matching
tools include: add __aligned_u64 to types.h.
perf tools: Set vmlinux_path__nr_entries to 0 in vmlinux_path__exit
tools lib traceevent: Install libtraceevent.a into libdir
tools build: Change FEATURE_TESTS and FEATURE_DISPLAY to weak binding
perf probe: Fix 'function unused' warning
perf tools: Add ARM64 perf_regs_load to support libunwind and enable testing
perf probe: Fix segfault when glob matching function without debuginfo
perf tools: Move linux/kernel.h to tools/include
tools: Move tools/perf/util/include/linux/{list.h,poison.h} to tools/include
perf tools: Deal with kernel module names in '[]' correctly
tools lib traceevent: Fix python/perf.so compiling error
perf tools: Ignore .config-detected in .gitignore
perf tools: Fix a problem when opening old perf.data with different byte order
perf tools: Move libtraceevent dynamic list to separated LDFLAGS variable

Will Deacon (1):
perf tools: Use getconf to determine number of online CPUs

Yan, Zheng (6):
perf/x86/intel: Use the PEBS auto reload mechanism when possible
perf/x86/intel: Introduce setup_pebs_sample_data()
perf/x86/intel: Handle multiple records in the PEBS buffer
perf/x86/intel: Implement batched PEBS interrupt handling (large PEBS interrupt threshold)
perf/x86/intel: Drain the PEBS buffer during context switches
perf/intel/x86: Enlarge the PEBS buffer

Yannick Brosseau (1):
perf report: Fix sort__sym_cmp to also compare end of symbol

Makefile | 5 +-
arch/x86/kernel/cpu/perf_event.c | 20 +-
arch/x86/kernel/cpu/perf_event.h | 21 +-
arch/x86/kernel/cpu/perf_event_intel.c | 224 ++--
arch/x86/kernel/cpu/perf_event_intel_cqm.c | 108 +-
arch/x86/kernel/cpu/perf_event_intel_ds.c | 317 +++--
arch/x86/kernel/cpu/perf_event_intel_lbr.c | 13 +-
arch/x86/kernel/cpu/perf_event_intel_pt.c | 38 +-
arch/x86/kernel/cpu/perf_event_intel_uncore.c | 3 +
arch/x86/kernel/cpu/perf_event_intel_uncore.h | 1 +
arch/x86/kernel/cpu/perf_event_intel_uncore_snb.c | 20 +
include/linux/perf_event.h | 42 +-
include/linux/sched.h | 7 +-
include/uapi/linux/perf_event.h | 18 +
init/Kconfig | 2 +-
kernel/events/core.c | 39 +-
kernel/events/internal.h | 9 -
kernel/sched/core.c | 2 +-
tools/Makefile | 20 +-
tools/arch/alpha/include/asm/barrier.h | 8 +
tools/arch/arm/include/asm/barrier.h | 12 +
tools/arch/arm64/include/asm/barrier.h | 16 +
tools/arch/ia64/include/asm/barrier.h | 48 +
tools/arch/mips/include/asm/barrier.h | 20 +
tools/arch/powerpc/include/asm/barrier.h | 29 +
tools/arch/s390/include/asm/barrier.h | 30 +
tools/arch/sh/include/asm/barrier.h | 32 +
tools/arch/sparc/include/asm/barrier.h | 8 +
tools/arch/sparc/include/asm/barrier_32.h | 6 +
tools/arch/sparc/include/asm/barrier_64.h | 42 +
tools/arch/tile/include/asm/barrier.h | 15 +
tools/arch/x86/include/asm/atomic.h | 65 +
tools/arch/x86/include/asm/barrier.h | 28 +
tools/arch/x86/include/asm/rmwcc.h | 41 +
tools/arch/xtensa/include/asm/barrier.h | 18 +
tools/build/Makefile.build | 2 +-
tools/build/Makefile.feature | 4 +-
tools/build/tests/ex/Build | 1 +
tools/build/tests/ex/empty2/README | 2 +
tools/include/asm-generic/atomic-gcc.h | 63 +
tools/include/asm-generic/barrier.h | 44 +
tools/include/asm/atomic.h | 10 +
tools/include/asm/barrier.h | 27 +
tools/include/linux/atomic.h | 6 +
tools/include/linux/compiler.h | 4 +
tools/{perf/util => }/include/linux/kernel.h | 4 +-
tools/{perf/util => }/include/linux/list.h | 6 +-
tools/include/linux/poison.h | 1 +
tools/include/linux/types.h | 8 +
tools/lib/traceevent/.gitignore | 1 +
tools/lib/traceevent/Makefile | 34 +-
tools/lib/traceevent/event-parse.c | 6 +-
tools/lib/traceevent/event-parse.h | 1 +
tools/lib/traceevent/plugin_cfg80211.c | 13 +
tools/perf/.gitignore | 1 +
.../callchain-overhead-calculation.txt | 108 ++
tools/perf/Documentation/perf-bench.txt | 3 +
tools/perf/Documentation/perf-inject.txt | 27 +
tools/perf/Documentation/perf-kmem.txt | 11 +-
tools/perf/Documentation/perf-kvm.txt | 6 +
tools/perf/Documentation/perf-probe.txt | 17 +-
tools/perf/Documentation/perf-record.txt | 27 +-
tools/perf/Documentation/perf-report.txt | 35 +-
tools/perf/Documentation/perf-script.txt | 37 +-
tools/perf/Documentation/perf-top.txt | 9 +-
tools/perf/Documentation/perf-trace.txt | 7 +-
tools/perf/MANIFEST | 26 +-
tools/perf/Makefile.perf | 30 +-
tools/perf/arch/arm64/Build | 1 +
tools/perf/arch/arm64/include/perf_regs.h | 3 +
tools/perf/arch/arm64/tests/Build | 2 +
tools/perf/arch/arm64/tests/dwarf-unwind.c | 61 +
tools/perf/arch/arm64/tests/regs_load.S | 46 +
tools/perf/arch/common.c | 2 +-
tools/perf/arch/powerpc/util/Build | 1 +
tools/perf/arch/powerpc/util/sym-handling.c | 82 ++
tools/perf/bench/Build | 1 +
tools/perf/bench/bench.h | 2 +
tools/perf/bench/futex-wake-parallel.c | 294 +++++
tools/perf/bench/futex-wake.c | 7 +-
tools/perf/bench/numa.c | 33 +-
tools/perf/builtin-annotate.c | 19 +-
tools/perf/builtin-bench.c | 1 +
tools/perf/builtin-buildid-list.c | 9 +
tools/perf/builtin-diff.c | 9 +-
tools/perf/builtin-inject.c | 175 ++-
tools/perf/builtin-kmem.c | 988 ++++++++++++--
tools/perf/builtin-kvm.c | 11 +-
tools/perf/builtin-lock.c | 8 +-
tools/perf/builtin-mem.c | 5 +-
tools/perf/builtin-probe.c | 195 ++-
tools/perf/builtin-record.c | 382 ++++--
tools/perf/builtin-report.c | 47 +-
tools/perf/builtin-sched.c | 159 ++-
tools/perf/builtin-script.c | 94 +-
tools/perf/builtin-stat.c | 490 +------
tools/perf/builtin-timechart.c | 9 +-
tools/perf/builtin-top.c | 72 +-
tools/perf/builtin-trace.c | 139 +-
tools/perf/config/Makefile | 13 +-
tools/perf/config/utilities.mak | 19 +
tools/perf/perf-sys.h | 73 +-
tools/perf/perf.h | 6 +
tools/perf/tests/Build | 8 +-
tools/perf/tests/builtin-test.c | 16 +-
tools/perf/tests/code-reading.c | 26 +-
tools/perf/tests/dso-data.c | 15 +-
tools/perf/tests/dwarf-unwind.c | 3 +-
tools/perf/tests/evsel-roundtrip-name.c | 4 +-
tools/perf/tests/hists_common.c | 10 +-
tools/perf/tests/hists_cumulate.c | 10 +-
tools/perf/tests/hists_filter.c | 12 +-
tools/perf/tests/hists_link.c | 12 +-
tools/perf/tests/hists_output.c | 10 +-
tools/perf/tests/keep-tracking.c | 4 +-
tools/perf/tests/kmod-path.c | 72 ++
tools/perf/tests/make | 18 +-
tools/perf/tests/mmap-basic.c | 6 +-
tools/perf/tests/mmap-thread-lookup.c | 6 +-
...yscall-all-cpus.c => openat-syscall-all-cpus.c} | 13 +-
...call-tp-fields.c => openat-syscall-tp-fields.c} | 6 +-
.../tests/{open-syscall.c => openat-syscall.c} | 14 +-
tools/perf/tests/parse-events.c | 14 +-
tools/perf/tests/perf-time-to-tsc.c | 2 +-
tools/perf/tests/pmu.c | 3 +-
tools/perf/tests/switch-tracking.c | 8 +-
tools/perf/tests/tests.h | 17 +-
tools/perf/tests/thread-mg-share.c | 41 +-
tools/perf/tests/vmlinux-kallsyms.c | 34 +-
tools/perf/ui/browsers/annotate.c | 64 +-
tools/perf/ui/browsers/hists.c | 646 ++++++----
tools/perf/ui/tui/setup.c | 2 +-
tools/perf/util/Build | 13 +-
tools/perf/util/annotate.c | 73 +-
tools/perf/util/annotate.h | 7 +-
tools/perf/util/auxtrace.c | 1352 ++++++++++++++++++++
tools/perf/util/auxtrace.h | 643 ++++++++++
tools/perf/util/build-id.c | 64 +-
tools/perf/util/cache.h | 1 -
tools/perf/util/callchain.h | 4 +
tools/perf/util/cgroup.c | 10 +-
tools/perf/util/cgroup.h | 4 +-
tools/perf/util/comm.c | 13 +-
tools/perf/util/data-convert-bt.c | 410 +++++-
tools/perf/util/db-export.c | 31 +-
tools/perf/util/dso.c | 334 +++--
tools/perf/util/dso.h | 47 +-
tools/perf/util/dwarf-aux.c | 220 +++-
tools/perf/util/dwarf-aux.h | 13 +-
tools/perf/util/environment.c | 1 -
tools/perf/util/event.c | 119 +-
tools/perf/util/event.h | 99 +-
tools/perf/util/evlist.c | 103 +-
tools/perf/util/evlist.h | 13 +-
tools/perf/util/evsel.c | 26 +-
tools/perf/util/evsel.h | 7 +-
tools/perf/util/header.c | 52 +-
tools/perf/util/header.h | 1 +
tools/perf/util/hist.c | 63 +-
tools/perf/util/hist.h | 1 -
tools/perf/util/include/linux/poison.h | 1 -
tools/perf/util/include/linux/rbtree.h | 14 +
tools/perf/util/machine.c | 281 +++-
tools/perf/util/machine.h | 32 +-
tools/perf/util/map.c | 267 ++--
tools/perf/util/map.h | 52 +-
tools/perf/util/pager.c | 5 -
tools/perf/util/parse-branch-options.c | 94 ++
tools/perf/util/parse-branch-options.h | 5 +
tools/perf/util/parse-events.c | 196 ++-
tools/perf/util/parse-events.h | 42 +-
tools/perf/util/parse-events.l | 41 +-
tools/perf/util/parse-events.y | 50 +-
tools/perf/util/parse-options.h | 4 +
tools/perf/util/pmu.c | 72 +-
tools/perf/util/pmu.h | 6 +-
tools/perf/util/probe-event.c | 662 ++++++----
tools/perf/util/probe-event.h | 26 +-
tools/perf/util/probe-finder.c | 165 ++-
tools/perf/util/probe-finder.h | 10 +-
tools/perf/util/pstack.c | 7 +
tools/perf/util/pstack.h | 1 +
tools/perf/util/python-ext-sources | 1 +
tools/perf/util/record.c | 15 +-
tools/perf/util/session.c | 288 ++++-
tools/perf/util/session.h | 6 +
tools/perf/util/sort.c | 12 +-
tools/perf/util/sort.h | 38 +-
tools/perf/util/stat-shadow.c | 434 +++++++
tools/perf/util/stat.c | 71 +-
tools/perf/util/stat.h | 46 +
tools/perf/util/strfilter.c | 107 ++
tools/perf/util/strfilter.h | 35 +
tools/perf/util/symbol-elf.c | 23 +-
tools/perf/util/symbol.c | 117 +-
tools/perf/util/symbol.h | 12 +-
tools/perf/util/thread-stack.c | 18 +-
tools/perf/util/thread-stack.h | 1 +
tools/perf/util/thread.c | 12 +-
tools/perf/util/thread.h | 5 +-
tools/perf/util/thread_map.c | 24 +-
tools/perf/util/tool.h | 13 +-
tools/perf/util/trace-event-parse.c | 2 +-
tools/perf/util/unwind-libunwind.c | 11 +-
tools/perf/util/util.c | 121 +-
tools/perf/util/util.h | 6 +
tools/perf/util/vdso.c | 60 +-
tools/perf/util/vdso.h | 4 +-
tools/perf/util/xyarray.c | 8 +
tools/perf/util/xyarray.h | 2 +
211 files changed, 10821 insertions(+), 2891 deletions(-)
create mode 100644 tools/arch/alpha/include/asm/barrier.h
create mode 100644 tools/arch/arm/include/asm/barrier.h
create mode 100644 tools/arch/arm64/include/asm/barrier.h
create mode 100644 tools/arch/ia64/include/asm/barrier.h
create mode 100644 tools/arch/mips/include/asm/barrier.h
create mode 100644 tools/arch/powerpc/include/asm/barrier.h
create mode 100644 tools/arch/s390/include/asm/barrier.h
create mode 100644 tools/arch/sh/include/asm/barrier.h
create mode 100644 tools/arch/sparc/include/asm/barrier.h
create mode 100644 tools/arch/sparc/include/asm/barrier_32.h
create mode 100644 tools/arch/sparc/include/asm/barrier_64.h
create mode 100644 tools/arch/tile/include/asm/barrier.h
create mode 100644 tools/arch/x86/include/asm/atomic.h
create mode 100644 tools/arch/x86/include/asm/barrier.h
create mode 100644 tools/arch/x86/include/asm/rmwcc.h
create mode 100644 tools/arch/xtensa/include/asm/barrier.h
create mode 100644 tools/build/tests/ex/empty2/README
create mode 100644 tools/include/asm-generic/atomic-gcc.h
create mode 100644 tools/include/asm-generic/barrier.h
create mode 100644 tools/include/asm/atomic.h
create mode 100644 tools/include/asm/barrier.h
create mode 100644 tools/include/linux/atomic.h
rename tools/{perf/util => }/include/linux/kernel.h (97%)
rename tools/{perf/util => }/include/linux/list.h (90%)
create mode 100644 tools/include/linux/poison.h
create mode 100644 tools/perf/Documentation/callchain-overhead-calculation.txt
create mode 100644 tools/perf/arch/arm64/tests/Build
create mode 100644 tools/perf/arch/arm64/tests/dwarf-unwind.c
create mode 100644 tools/perf/arch/arm64/tests/regs_load.S
create mode 100644 tools/perf/arch/powerpc/util/sym-handling.c
create mode 100644 tools/perf/bench/futex-wake-parallel.c
rename tools/perf/tests/{open-syscall-all-cpus.c => openat-syscall-all-cpus.c} (90%)
rename tools/perf/tests/{open-syscall-tp-fields.c => openat-syscall-tp-fields.c} (94%)
rename tools/perf/tests/{open-syscall.c => openat-syscall.c} (79%)
create mode 100644 tools/perf/util/auxtrace.c
create mode 100644 tools/perf/util/auxtrace.h
delete mode 100644 tools/perf/util/include/linux/poison.h
create mode 100644 tools/perf/util/parse-branch-options.c
create mode 100644 tools/perf/util/parse-branch-options.h
create mode 100644 tools/perf/util/stat-shadow.c

[ Full diff skipped, it's too large for lkml. ]
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
Please read the FAQ at http://www.tux.org/lkml/