<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>LKML: Ingo Molnar: [GIT PULL] perf updates for v4.1</title><link href="/css/message.css" rel="stylesheet" type="text/css" /><link href="/css/wrap.css" rel="alternate stylesheet" type="text/css" title="wrap" /><link href="/css/nowrap.css" rel="stylesheet" type="text/css" title="nowrap" /><link href="/favicon.ico" rel="shortcut icon" /><script src="/js/simple-calendar.js" type="text/javascript"></script><script src="/js/styleswitcher.js" type="text/javascript"></script><link rel="alternate" type="application/rss+xml" title="lkml.org : last 100 messages" href="/rss.php" /><link rel="alternate" type="application/rss+xml" title="lkml.org : last messages by Ingo Molnar" href="/groupie.php?aid=18" /><!--Matomo--><script>
  var _paq = window._paq = window._paq || [];
  /* tracker methods like "setCustomDimension" should be called before "trackPageView" */
  _paq.push(["setDoNotTrack", true]);
  _paq.push(["disableCookies"]);
  _paq.push(['trackPageView']);
  _paq.push(['enableLinkTracking']);
  (function() {
    var u="//m.lkml.org/";
    _paq.push(['setTrackerUrl', u+'matomo.php']);
    _paq.push(['setSiteId', '1']);
    var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
    g.async=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s);
  })();
</script><!--End Matomo Code--></head><body onload="es.jasper.simpleCalendar.init();" itemscope="itemscope" itemtype="http://schema.org/BlogPosting"><table border="0" cellpadding="0" cellspacing="0"><tr><td width="180" align="center"><a href="/"><img style="border:0;width:135px;height:32px" src="/images/toprowlk.gif" alt="lkml.org" /></a></td><td width="32"> </td><td class="nb"><div><a class="nb" href="/lkml">
     [lkml]</a>
      
<a class="nb" href="/lkml/2015">
     [2015]</a>
      
<a class="nb" href="/lkml/2015/4">
     [Apr]</a>
      
<a class="nb" href="/lkml/2015/4/14">
     [14]</a>
      
<a class="nb" href="/lkml/last100">
     [last100]</a>
      
<a href="/rss.php"><img src="/images/rss-or.gif" border="0" alt="RSS Feed" /></a></div><div>Views:
<a href="#" class="nowrap" onclick="setActiveStyleSheet('wrap');return false;">[wrap]</a><a href="#" class="wrap" onclick="setActiveStyleSheet('nowrap');return false;">[no wrap]</a>
 
<a class="nb" href="/lkml/mheaders/2015/4/14/232" onclick="this.href='/lkml/headers'+'/2015/4/14/232';">[headers]</a> 
<a href="/lkml/bounce/2015/4/14/232">[forward]</a> 
    </div></td><td width="32"> </td></tr><tr><td valign="top"><div class="es-jasper-simpleCalendar" baseurl="/lkml/"></div><div class="threadlist">Messages in this thread</div><ul class="threadlist"><li class="root"><a href="/lkml/2015/4/14/232">First message in thread</a></li><li class="origin"><a href="/lkml/2015/4/14/264">Ingo Molnar</a><ul><li><a href="/lkml/2015/4/14/264">Ingo Molnar</a></li><li><a href="/lkml/2015/4/15/678">Linus Torvalds</a><ul><li><a href="/lkml/2015/4/16/242">Arnaldo Carvalho de Melo</a></li><li><a href="/lkml/2015/4/16/258">Arnaldo Carvalho de Melo</a></li></ul></li></ul></li></ul></td><td width="32" rowspan="2" class="c" valign="top"><img src="/images/icornerl.gif" width="32" height="32" alt="/" /></td><td class="c" rowspan="2" valign="top" style="padding-top: 1em"><table><tr><td><table><tr><td class="lp">Date</td><td class="rp" itemprop="datePublished">Tue, 14 Apr 2015 14:00:52 +0200</td></tr><tr><td class="lp">From</td><td class="rp" itemprop="author">Ingo Molnar &lt;&gt;</td></tr><tr><td class="lp">Subject</td><td class="rp" itemprop="name">[GIT PULL] perf updates for v4.1</td></tr></table></td><td></td></tr></table><pre itemprop="articleBody">Linus,<br /><br />Please pull the latest perf-core-for-linus git tree from:<br /><br />   git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git perf-core-for-linus<br /><br />   # HEAD: 066450be419fa48007a9f29e19828f2a86198754 perf/x86/intel/pt: Clean up the control flow in pt_pmu_hw_init()<br /><br />There were tons of changes in this cycle - almost 400 commits:<br /><br />Core kernel changes:<br /><br /> - One of the more interesting features in this cycle is the ability <br />   to attach eBPF programs (user-defined, sandboxed bytecode executed <br />   by the kernel) to kprobes. This allows user-defined instrumentation <br />   on a live kernel image that can never crash, hang or interfere with <br />   the kernel negatively. (Right now it's limited to root-only, but in<br />   the future we might allow unprivileged use as well.)<br /><br />   (Alexei Starovoitov)<br /><br /> - Another non-trivial feature is per event clockid support: this <br />   allows, amongst other things, the selection of different clock <br />   sources for event timestamps traced via perf. This feature is<br />   sought by people who'd like to merge perf generated events with <br />   external events that were measured with different clocks:<br /><br />     - cluster wide profiling<br /><br />     - for system wide tracing with user-space events, <br /><br />     - JIT profiling events<br /><br />   etc. Matching perf tooling support is added as well, available via <br />   the -k, --clockid &lt;clockid&gt; parameter to perf record et al.<br /><br />   (Peter Zijlstra)<br /><br />Hardware enablement kernel changes:<br /><br /> - x86 Intel Processor Trace (PT) support: which is a hardware tracer <br />   on steroids, available on Broadwell CPUs. The hardware trace stream <br />   is directly output into the user-space ring-buffer, using the 'AUX' <br />   data format extension that was added to the perf core to support <br />   hardware constraints such as the necessity to have the tracing <br />   buffer physically contiguous. This patch-set was developed for two <br />   years and this is the result. A simple way to make use of this is <br />   to use BTS tracing, the PT driver emulates BTS output - available <br />   via the 'intel_bts' PMU. More explicit PT specific tooling support <br />   is in the works as well - will probably be ready by 4.2.<br /><br />   (Alexander Shishkin, Peter Zijlstra)<br /><br /> - x86 Intel Cache QoS Monitoring (CQM) support: a hardware feature of <br />   Intel Xeon CPUs that allows the measurement and <br />   allocation/partitioning of caches to individual workloads.<br /><br />   These kernel changes expose the measurement side as a new PMU <br />   driver, which exposes various QoS related PMU events. (The <br />   partitioning change is work in progress and is planned to be merged <br />   as a cgroup extension.)<br /><br />   (Matt Fleming, Peter Zijlstra; CPU feature detection by Peter P <br />    Waskiewicz Jr)<br /><br /> - x86 Intel Haswell LBR call stack support: this is a new Haswell <br />   feature that allows the hardware recording of call chains, plus <br />   tooling support.  To activate this feature you have to enable it <br />   via the new 'lbr' call-graph recording option:<br /><br />     perf record --call-graph lbr<br />     perf report<br /><br />   or:<br /><br />     perf top --call-graph lbr<br /><br />   This hardware feature is a lot faster than stack walk or dwarf<br />   based unwinding, but has some limitations:<br /><br />    - It reuses the current LBR facility, so LBR call stack and branch<br />      record can not be enabled at the same time.<br /><br />    - It is only available for user-space callchains.<br /><br />   (Yan, Zheng)<br /><br /> - x86 Intel Broadwell CPU support and various event constraints and <br />   event table fixes for earlier models.<br /><br />   (Andi Kleen)<br /><br /> - x86 Intel HT CPUs event scheduling workarounds. This is a complex<br />   CPU bug affecting the SNB,IVB,HSW families that results in counter <br />   value corruption. The mitigation code is automatically enabled and <br />   is transparent.<br /><br />   (Maria Dimakopoulou, Stephane Eranian)<br /><br />The perf tooling side had a ton of changes in this cycle as well, so <br />I'm only able to list the user visible changes here, in addition to <br />the tooling changes outlined above:<br /><br />User visible changes affecting all tools:<br /><br />      - Improve support of compressed kernel modules (Jiri Olsa)<br />      - Save DSO loading errno to better report errors (Arnaldo Carvalho de Melo)<br />      - Bash completion for subcommands (Yunlong Song)<br />      - Add 'I' event modifier for perf_event_attr.exclude_idle bit (Jiri Olsa)<br />      - Support missing -f to override perf.data file ownership. (Yunlong Song)<br />      - Show the first event with an invalid filter (David Ahern, Arnaldo Carvalho de Melo)<br /><br />User visible changes in individual tools:<br /><br />    'perf data': New tool for converting perf.data to other formats, initially for the<br />                 CTF (Common Trace Format) from LTTng (Jiri Olsa, Sebastian Siewior)<br /><br />    'perf diff':<br />      - Add --kallsyms option (David Ahern)<br /><br />    'perf list':<br /><br />      - Allow listing events with 'tracepoint' prefix (Yunlong Song)<br />      - Sort the output of the command (Yunlong Song)<br /><br />    'perf kmem':<br /><br />      - Respect -i option (Jiri Olsa)<br />      - Print big numbers using thousands' group (Namhyung Kim)<br />      - Allow -v option (Namhyung Kim)<br />      - Fix alignment of slab result table (Namhyung Kim)<br /><br />    'perf probe':<br /><br />      - Support multiple probes on different binaries on the same command line (Masami Hiramatsu)<br />      - Support unnamed union/structure members data collection. (Masami Hiramatsu)<br />      - Check kprobes blacklist when adding new events. (Masami Hiramatsu)<br /><br />    'perf record':<br /><br />      - Teach 'perf record' about perf_event_attr.clockid (Peter Zijlstra)<br />      - Support recording running/enabled time (Andi Kleen)<br /><br />    'perf sched':<br /><br />      - Improve the performance of 'perf sched replay' on high CPU core count machines (Yunlong Song)<br /><br />    'perf report' and 'perf top':<br /><br />      - Allow annotating entries in callchains in the hists browser (Arnaldo Carvalho de Melo)<br /><br />      - Indicate which callchain entries are annotated in the<br />        TUI hists browser (Arnaldo Carvalho de Melo)<br /><br />      - Add pid/tid filtering to 'report' and 'script' commands (David Ahern)<br /><br />      - Consider PERF_RECORD_ events with cpumode == 0 in 'perf top', removing one<br />        cause of long term memory usage buildup, i.e. not processing PERF_RECORD_EXIT<br />        events (Arnaldo Carvalho de Melo)<br /><br />    'perf stat':<br /><br />      - Report unsupported events properly (Suzuki K. Poulose)<br />      - Output running time and run/enabled ratio in CSV mode (Andi Kleen)<br /><br />    'perf trace':<br /><br />      - Handle legacy syscalls tracepoints (David Ahern, Arnaldo Carvalho de Melo)<br /><br />      - Only insert blank duration bracket when tracing syscalls (Arnaldo Carvalho de Melo)<br /><br />      - Filter out the trace pid when no threads are specified (Arnaldo Carvalho de Melo)<br /><br />      - Dump stack on segfaults (Arnaldo Carvalho de Melo)<br /><br />      - No need to explicitely enable evsels for workload started from perf, let it<br />        be enabled via perf_event_attr.enable_on_exec, removing some events that take<br />        place in the 'perf trace' before a workload is really started by it.<br />        (Arnaldo Carvalho de Melo)<br /><br />      - Allow mixing with tracepoints and suppressing plain syscalls. (Arnaldo Carvalho de Melo)<br /><br />There's also been a ton of infrastructure work done, such as the <br />split-out of perf's build system into tools/build/ and other changes - <br />see the shortlog and changelog for details.<br /><br /> Thanks,<br /><br />	Ingo<br /><br />------------------&gt;<br />Adrian Hunter (1):<br />      perf tools: Initialize cpu set in pthread_attr_setaffinity_np feature test<br /><br />Alexander Shishkin (13):<br />      perf: Add data_{offset,size} to user_page<br />      perf: Support high-order allocations for AUX space<br />      perf: Add a capability for AUX_NO_SG pmus to do software double buffering<br />      perf: Add a pmu capability for "exclusive" events<br />      perf: Add AUX record<br />      perf: Add API for PMUs to write to the AUX area<br />      perf: Support overwrite mode for the AUX area<br />      perf: Add wakeup watermark control to the AUX area<br />      perf: Add ITRACE_START record to indicate that tracing has started<br />      x86: Add Intel Processor Trace (INTEL_PT) cpu feature detection<br />      perf/x86: Mark Intel PT and LBR/BTS as mutually exclusive<br />      perf/x86/intel/pt: Add Intel PT PMU driver<br />      perf/x86/intel/bts: Add BTS PMU driver<br /><br />Alexei Starovoitov (8):<br />      tracing: Add kprobe flag<br />      tracing, perf: Implement BPF programs attached to kprobes<br />      tracing: Allow BPF programs to call bpf_ktime_get_ns()<br />      tracing: Allow BPF programs to call bpf_trace_printk()<br />      samples/bpf: Add simple non-portable kprobe filter example<br />      samples/bpf: Add counting example for kfree_skb() function calls and the write() syscall<br />      samples/bpf: Add IO latency analysis (iosnoop/heatmap) tool<br />      samples/bpf: Add kmem_alloc()/free() tracker tool<br /><br />Andi Kleen (12):<br />      perf record: Support recording running/enabled time<br />      perf stat: Output running time and run/enabled ratio in CSV mode<br />      perf stat: Fix IPC and other formulas with -A<br />      perf stat: Always correctly indent ratio column<br />      perf/x86/intel: Add new cache events table for Haswell<br />      perf/x86/intel: Add Broadwell core support<br />      perf/x86/intel: Add INST_RETIRED.ALL workarounds<br />      perf/x86/intel: Reset more state in PMU reset<br />      perf/x86: Dump DEBUGCTL in PMU dump<br />      perf/x86: Only dump PEBS register when PEBS has been detected<br />      perf/x86/intel: Streamline LBR MSR handling in PMI<br />      perf/x86/intel: Avoid rewriting DEBUGCTL with the same value for LBRs<br /><br />Aravind Gopalakrishnan (1):<br />      perf/x86/amd/ibs: Convert force_ibs_eilvt_setup() to void<br /><br />Arnaldo Carvalho de Melo (51):<br />      tools lib traceevent: Introduce trace_seq_do_fprintf function<br />      perf tools: Introduce event_format__fprintf method<br />      perf trace: No need to enable evsels for workload started from perf<br />      perf evlist: Fix typo in comment<br />      perf trace: Print thread info when following children<br />      perf trace: Handle multiple threads better wrt syscalls being intermixed<br />      perf trace: Allow mixing with other events<br />      perf trace: Support --events foo:bar --no-syscalls<br />      perf trace: Only insert blank duration bracket when tracing syscalls<br />      perf evlist: Introduce set_filter_pid method<br />      perf trace: Filter out the trace pid when no threads are specified<br />      perf evlist: Introduce set_filter_pids method<br />      perf trace: Introduce --filter-pids<br />      perf trace: Add man page entry for --event<br />      perf trace: Separate routine that handles an event from the one that reads it<br />      perf session: Remove wrappers to machines__find<br />      perf evlist: Adopt events_stats from perf_session<br />      perf session: Remove perf_session from warn_errors signature<br />      perf session: Remove perf_session from some deliver event routines<br />      perf session: Remove perf_session from dump_event<br />      perf ordered_events: Stop using tool-&gt;ordered_events<br />      perf tools: Introduce dump_stack signal helper<br />      perf trace: Dump stack on segfaults<br />      perf tools: Print the thread's tid on PERF_RECORD_COMM events when -D is asked<br />      perf probe: Handle strdup() failure<br />      perf tools: Fix FORK after COMM when synthesizing records for pre-existing threads<br />      perf tools: Reference count struct thread<br />      perf sched: No need to keep the session around<br />      perf ordered_events: Untangle from perf_session<br />      perf ordered_events: Shorten function signatures<br />      perf ordered_events: Allow tools to specify a deliver method<br />      perf tools: tool-&gt;finished_round() doesn't need perf_session<br />      perf ordered_events: Adopt queue() method<br />      perf tools: Output feature detection's gcc output to a file<br />      perf hists browser: Simplify symbol annotation menu setup<br />      perf hists browser: Fix up some branch alignment<br />      perf hists: Remove hist_entry-&gt;used, not used anymore<br />      perf hists browser: Allow annotating entries in callchains<br />      perf trace: Handle legacy syscalls tracepoints<br />      perf hists browser: Indicate which callchain entries are annotated<br />      perf target: Simplify handling of strerror_r return<br />      perf symbols: Save DSO loading errno to better report errors<br />      perf evlist: Return the first evsel with an invalid filter in apply_filters()<br />      perf trace: Fix syscall enter formatting bug<br />      perf session: Always initialize ordered_events<br />      perf ordered_samples: Remove references to perf_{evlist,tool} and machines<br />      perf script: No need to lookup thread twice<br />      perf scripting: No need to pass thread twice to the scripting callbacks<br />      perf db-export: No need to pass thread twice to db_export__sample<br />      perf db-export: No need to have -&gt;thread twice in struct export_sample<br />      perf tools: Fix error path to do closedir() when synthesizing threads<br /><br />Daniel Borkmann (1):<br />      bpf: Make internal bpf API independent of CONFIG_BPF_SYSCALL #ifdefs<br /><br />Daniel Thompson (5):<br />      timers, sched/clock: Match scope of read and write seqcounts<br />      timers, sched/clock: Optimize cache line usage<br />      timers, sched/clock: Remove suspend from clock_read_data()<br />      timers, sched/clock: Remove redundant notrace from update function<br />      timers, sched/clock: Avoid deadlock during read from NMI<br /><br />David Ahern (17):<br />      perf trace: Fix SIGBUS failures due to misaligned accesses<br />      perf tools: Only include tsc file for x86<br />      perf tools: Compare JOBS to 0 after grep<br />      perf probe: Fix compiles due to declarations using perf_probe_point<br />      perf trace: Fix summary_only option<br />      tools lib traceevent: Add destructor for format_field<br />      perf diff: Add kallsyms option<br />      perf tools: Add pid/tid filtering to report and script commands<br />      perf timechart: Fix SIBGUS error on sparc64<br />      perf: Bump max number of cpus to 1024<br />      perf tools: Set JOBS based on CPU or processor<br />      perf/x86: Remove redundant calls to perf_pmu_{dis|en}able()<br />      perf tools: Refactor comm/tgid lookup<br />      perf tools: Fix ppid for synthesized fork events<br />      perf tools: Fix synthesizing fork_event.ppid for non-main thread<br />      perf tools: Fix cross-endian analysis<br />      perf evlist: Fix type for references to data_head/tail<br /><br />David Hildenbrand (1):<br />      perf callchain: Fix kernel symbol resolution by remembering the cpumode<br /><br />Eugene Shatokhin (1):<br />      kprobes/x86: Return correct length in __copy_instruction()<br /><br />H.J. Lu (1):<br />      perf tools: Fix perf-read-vdsox32 not building and lib64 install dir<br /><br />He Kuang (8):<br />      perf probe: Fix a precedence bug<br />      perf report: Fix branch stack mode cannot be set<br />      perf probe: Fix possible double free on error<br />      perf hists browser: Fix UI bug after zoom into thread/dso/symbol<br />      perf hists browser: Fix UI bug after fold/unfold<br />      perf probe: Fix failure to add multiple probes without debuginfo<br />      perf evlist: Fix inverted logic in perf_mmap__empty<br />      perf buildid-list: Fix segfault when show DSOs with hits<br /><br />Ingo Molnar (11):<br />      perf tools: Add PERF-FEATURES to the .gitignore file<br />      perf tools: Remove annoying extra message from the features build<br />      perf tools: Improve Python feature detection messages<br />      perf tools: Improve libperl detection message<br />      perf tools: Improve libbfd detection message<br />      perf tools: Improve feature test debuggability<br />      perf tools: Improve 'libbabel' feature check failure message<br />      timers, sched/clock: Clean up the code a bit<br />      bpf: Fix the build on BPF_SYSCALL=y &amp;&amp; !CONFIG_TRACING kernels, make it more configurable<br />      perf/x86/intel/pt: Fix the 32-bit build<br />      perf/x86/intel/pt: Clean up the control flow in pt_pmu_hw_init()<br /><br />Javi Merino (2):<br />      tools lib traceevent: Factor out allocating and processing args<br />      tools lib traceevent: Add support for __print_array()<br /><br />Jiri Olsa (72):<br />      tools build: Add new build support<br />      tools build: Add detected config support<br />      tools build: Add subdir support<br />      perf tools: Remove api fs object from python build<br />      perf build: Disable make's built-in rules<br />      perf build: Add bench objects building<br />      perf build: Add tests objects building<br />      perf build: Add builtin objects building<br />      perf build: Add libperf objects building<br />      perf build: Add probe objects building<br />      perf build: Add dwarf objects building<br />      perf build: Add dwarf unwind objects building<br />      perf build: Add ui objects building<br />      perf build: Add slang objects building<br />      perf build: Add gtk objects building<br />      perf build: Add scripts objects building<br />      perf build: Add perf regs objects building<br />      perf build: Add zlib objects building<br />      perf build: Add perf.o object building<br />      perf build: Add arch x86 objects building<br />      perf build: Add arch arm objects building<br />      perf build: Add arch arm64 objects building<br />      perf build: Add arch powerpc objects building<br />      perf build: Add arch s390 objects building<br />      perf build: Add arch sh objects building<br />      perf build: Add arch sparc objects building<br />      perf build: Add single target build framework support<br />      perf build: Remove directory dependency rules<br />      perf build: Remove uneeded variables<br />      perf build: Remove PERF-CFLAGS file<br />      perf build: Add build documentation<br />      tools lib api: Use tools build framework<br />      tools lib api: Rename libapikfs.a to libapi.a<br />      tools lib traceevent: Use tools build framework<br />      tools lib lockdep: Use tools build framework<br />      perf build: Display make commands on V=1<br />      perf tools: Add feature check for libbabeltrace<br />      perf tools: Add new 'perf data' command<br />      perf data: Add perf data to CTF conversion support<br />      perf tools: Remove superfluous thread-&gt;comm_set setting<br />      perf build: Fix libbabeltrace detection<br />      perf build: Disable default check for libbabeltrace<br />      perf build: Move features build output under features directory<br />      perf build: Fix pthread-attr-setaffinity-np include in test-all<br />      perf build: Get rid of LIB_INCLUDE variable<br />      perf build: Rename CORE_FEATURE_TESTS to FEATURE_TESTS<br />      perf build: Get rid of VF_FEATURE_TESTS<br />      perf build: Rename display_lib into feature_display<br />      perf build: Rename display_vf to feature_verbose<br />      perf build: Rename PERF-FEATURES into FEATURE-DUMP<br />      perf build: Rename feature_print_var_code to print_var_code<br />      perf build: Fix feature_check name clash<br />      perf build: Separate feature make support into config/Makefile.feature<br />      perf build: Make features checks directory configurable<br />      perf build: Move feature checks code under tools/build<br />      tools build: Add feature check for lzma library<br />      perf tools: Add lzma decompression support for kernel module<br />      perf tools: Add kmod_path__parse function<br />      perf tools: Add dsos__addnew function<br />      perf tools: Add machine__module_dso function<br />      perf tools: Use kmod_path__parse for machine__new_dso<br />      perf tools: Use kmod_path__parse in map_groups__set_modules_path_dir<br />      perf tools: Use kmod_path__parse in decompress_kmodule<br />      perf tools: Use kmod_path__parse in is_kernel_module<br />      perf tools: Remove compressed argument from is_kernel_module<br />      perf tools: Remove is_kmodule_extension function<br />      perf tools: Try to lookup kernel module map before creating one<br />      perf annotate: Allow annotation for decompressed kernel modules<br />      perf build: Disable libbabeltrace check by default<br />      perf kmem: Respect -i option<br />      perf tests: Fix attr tests<br />      perf tools: Add 'I' event modifier for exclude_idle bit<br /><br />John Stultz (12):<br />      clocksource: Simplify the clocks_calc_max_nsecs() logic<br />      clocksource: Simplify the logic around clocksource wrapping safety margins<br />      clocksource: Add 'max_cycles' to 'struct clocksource'<br />      timekeeping: Add debugging checks to warn if we see delays<br />      timekeeping: Add checks to cap clocksource reads to the 'max_cycles' value<br />      timekeeping: Try to catch clocksource delta underflows<br />      timekeeping: Add warnings when overflows or underflows are observed<br />      clocksource: Improve clocksource watchdog reporting<br />      clocksource: Mostly kill clocksource_register()<br />      clocksource, sparc32: Convert to using clocksource_register_hz()<br />      clocksource: Add some debug info about clocksources being registered<br />      clocksource: Rename __clocksource_updatefreq_*() to __clocksource_update_freq_*()<br /><br />Josef Bacik (1):<br />      tools lib traceevent: Handle NULL comm name<br /><br />Josh Boyer (1):<br />      perf tools: Define _GNU_SOURCE on pthread_attr_setaffinity_np feature check<br /><br />Kaixu Xia (1):<br />      perf: Remove the extra validity check on nr_pages<br /><br />Kan Liang (4):<br />      perf tools: Enable LBR call stack support<br />      perf tools: Construct LBR call chain<br />      perf diff: Support for different binaries<br />      Revert "perf: Remove the extra validity check on nr_pages"<br /><br />Maria Dimakopoulou (5):<br />      perf/x86: Add 3 new scheduling callbacks<br />      perf/x86/intel: Add cross-HT counter exclusion infrastructure<br />      perf/x86/intel: Implement cross-HT corruption bug workaround<br />      perf/x86/intel: Enforce HT bug workaround for SNB/IVB/HSW<br />      perf/x86/intel: Enforce HT bug workaround with PEBS for SNB/IVB/HSW<br /><br />Markus Elfring (1):<br />      perf/x86/intel/uncore: Delete an unnecessary check before pci_dev_put() call<br /><br />Masami Hiramatsu (19):<br />      perf probe: Fix to handle optimized not-inlined functions<br />      perf probe: Update man page<br />      perf buildid-cache: Remove unneeded debugdir parameters<br />      perf buildid-cache: Consolidate .build-id cache path generators<br />      perf probe: Check kprobes blacklist when adding new events<br />      perf probe: Fix get_real_path to free allocated memory in error path<br />      perf buildid-cache: Add new buildid cache if update target is not cached<br />      perf buildid-cache: Add --purge FILE to remove all caches of FILE<br />      perf buildid-cache: Use pr_debug instead of verbose &amp;&amp; pr_info<br />      perf buildid-cache: Show usage with incorrect params<br />      perf probe: Warn if given uprobe event accesses memory on older kernel<br />      perf probe: Remove bias offset to find probe point by address<br />      perf probe: Fix to handle aliased symbols in glibc<br />      perf probe: Fix --line to handle aliased symbols in glibc<br />      Revert "perf probe: Fix to fall back to find probe point in symbols"<br />      perf probe: Fix to get ummapped symbol address on kernel<br />      perf probe: Fix to track down unnamed union/structure members<br />      perf probe: Support multiple probes on different binaries<br />      perf probe: Check the orphaned -x option<br /><br />Matt Fleming (9):<br />      perf: Make perf_cgroup_from_task() global<br />      perf: Add -&gt;count() function to read per-package counters<br />      perf: Move cgroup init before PMU -&gt;event_init()<br />      perf/x86/intel: Add Intel Cache QoS Monitoring support<br />      perf/x86/intel: Implement LRU monitoring ID allocation for CQM<br />      perf/x86/intel: Support task events with Intel CQM<br />      perf/x86/intel: Perform rotation on Intel CQM RMIDs<br />      perf/x86/intel: Enable conflicting event scheduling for CQM<br />      perf/x86/intel: Fix Makefile to actually build the cqm driver<br /><br />Milos Vyletel (1):<br />      perf tools: Fix race in build_id_cache__add_s()<br /><br />Namhyung Kim (13):<br />      perf test: Fix dso cache testcase<br />      perf tests: Do not rely on dso__data_read_offset() to open dso<br />      perf tools: Fix a dso open fail message<br />      perf tools: Fix build error on ARCH=i386/x86_64/sparc64<br />      perf record: Get rid of -l option from Documentation<br />      perf record: Document --group option<br />      perf symbols: Allow symbol alias when loading map for symbol name<br />      perf probe: Allow weak symbols to be probed<br />      perf kmem: Fix segfault when invalid sort key is given<br />      perf kmem: Allow -v option<br />      perf kmem: Fix alignment of slab result table<br />      perf kmem: Print big numbers using thousands' group<br />      tools lib traceevent: Honor operator priority<br /><br />Peter P Waskiewicz Jr (1):<br />      x86: Add support for Intel Cache QoS Monitoring (CQM) detection<br /><br />Peter Zijlstra (13):<br />      perf/x86/intel: Expose LBR callstack to user space tooling<br />      perf, powerpc: Fix up flush_branch_stack() users<br />      perf: Remove type specific target pointers<br />      time: Rename timekeeper::tkr to timekeeper::tkr_mono<br />      time: Add timerkeeper::tkr_raw<br />      time: Parametrize all tk_fast_mono users<br />      time: Introduce tk_fast_raw<br />      time: Add ktime_get_tai_ns()<br />      perf: Fix racy group access<br />      perf: Add per event clockid support<br />      perf: Add AUX area to ring buffer for raw data streams<br />      perf record: Add clockid parameter<br />      perf tools: Merge all perf_event_attr print functions<br /><br />Sebastian Andrzej Siewior (2):<br />      perf data: Add a 'perf' prefix to the generic fields<br />      perf data: Add tracepoint events fields CTF conversion support<br /><br />Shaohua Li (2):<br />      perf: Update shadow timestamp before add event<br />      perf: Update userspace page info for software event<br /><br />Stephane Eranian (7):<br />      perf/x86: Rename x86_pmu::er_flags to 'flags'<br />      perf/x86: Vectorize cpuc-&gt;kfree_on_online<br />      perf/x86: Add 'index' param to get_event_constraint() callback<br />      perf/x86/intel: Fix intel_get_event_constraints() for dynamic constraints<br />      perf/x86/intel: Limit to half counters when the HT workaround is enabled, to avoid exclusive mode starvation<br />      watchdog: Add watchdog enable/disable all functions<br />      perf/x86/intel: Make the HT bug workaround conditional on HT enabled<br /><br />Steven Rostedt (2):<br />      tools lib traceevent: Make plugin options either string or boolean<br />      tools lib traceevent: Zero should not be considered "not found" in eval_flag()<br /><br />Steven Rostedt (Red Hat) (12):<br />      perf tools: Do not check debugfs MAGIC for tracing files<br />      tools lib fs: Add helper to find mounted file systems<br />      tools lib api fs: Add tracefs mount helper functions<br />      tools lib api debugfs: Add DEBUGFS_DEFAULT_PATH macro<br />      tools lib api fs: Add {tracefs,debugfs}_configured() functions<br />      perf tools: Make perf aware of tracefs<br />      tools lib traceevent: Copy trace_clock and free it<br />      tools lib traceevent: Handle %z in bprint format<br />      tools lib traceevent: Add pevent_data_pid_from_comm()<br />      tools lib traceevent kbuffer: Remove extra update to data pointer in PADDING<br />      tools lib traceevent: Add way to find sub buffer boundary<br />      tools lib traceevent: Free filter tokens in process_filter()<br /><br />Suzuki K. Poulose (1):<br />      perf stat: Report unsupported events properly<br /><br />Victor Kamensky (2):<br />      perf symbols: Ignore mapping symbols on aarch64<br />      perf symbols: debuglink should take symfs option into account<br /><br />Vinson Lee (2):<br />      perf symbols: Define STT_GNU_IFUNC for glibc 2.9 and older.<br />      perf tools: Work around lack of sched_getcpu in glibc &lt; 2.6.<br /><br />Viresh Kumar (1):<br />      clockevents: Introduce mode specific callbacks<br /><br />Wang Nan (7):<br />      perf tools: Fix building error for arm64.<br />      perf callchain: Separate eh/debug frame offset cache.<br />      perf report: Don't allow empty argument for '-t'.<br />      perf tools: Don't allow empty argument for field-separator<br />      perf kmaps: Check kmaps to make code more robust<br />      perf probe: Fix ARM 32 building error<br />      perf report: Don't call map__kmap if map is NULL.<br /><br />Yan, Zheng (13):<br />      perf/x86/intel: Reduce lbr_sel_map[] size<br />      perf: Introduce pmu context switch callback<br />      perf/x86/intel: Use context switch callback to flush LBR stack<br />      perf/x86/intel: Add basic Haswell LBR call stack support<br />      perf: Add pmu specific data for perf task context<br />      perf: Always switch pmu specific data during context switch<br />      perf/x86/intel: Allocate space for storing LBR stack<br />      perf/x86/intel: Track number of events that use the LBR callstack<br />      perf/x86/intel: Save/restore LBR stack during context switch<br />      perf: Simplify the branch stack check<br />      perf/x86/intel: Re-organize code that implicitly enables LBR/PEBS<br />      perf/x86/intel: Disable FREEZE_LBRS_ON_PMI when LBR operates in callstack mode<br />      perf/x86/intel: Discard zero length call entries in LBR call stack<br /><br />Yunlong Song (45):<br />      perf tools: Fix a bug of segmentation fault<br />      perf list: Place the header text in its right position<br />      perf data: Fix sentinel setting for data_cmds array<br />      perf list: Sort the output of 'perf list' to view more clearly<br />      perf list: Allow listing events with 'tracepoint' prefix<br />      perf list: Avoid confusion of perf output and the next command prompt<br />      perf tools: Remove the '--(null)' long_name for --list-opts<br />      perf list: Clean up the printing functions of hardware/software events<br />      perf list: Extend raw-dump to certain kind of events<br />      perf tools: Fix the bash completion problem of 'perf --*'<br />      perf tools: Fix the bash completion for listing options of perf subcommand<br />      perf tools: Fix the bash completion for listing subsubcommands of perf subcommand<br />      perf tools: Provide the right bash completion for listing options of perf subcommand subsubcommand<br />      perf tools: Fix the bash completion for listing events of perf subcommand record|stat|top -e<br />      perf tools: Fix the bash completion to support listing events for --event<br />      perf tools: Fix the bash completion for listing subcommands of perf<br />      perf tools: Add the bash completion for listing subsubcommands of perf data<br />      perf tools: Add the bash completion for listing subsubcommands of perf help<br />      perf tools: Add the bash completion for listing subsubcommands of perf script<br />      perf tools: Add the bash completion for listing subsubcommands of perf test<br />      perf tools: Add the bash completion for listing subsubcommands of perf timechart<br />      perf tools: Add the bash completion for listing subsubcommands of perf trace<br />      perf tools: Avoid confusion with preloaded bash function for perf bash completion<br />      perf build: Use FEATURE-DUMP instead of PERF-FEATURES in the .gitignore file<br />      perf build: Add config/feature-checks/*.output to the .gitignore file<br />      perf tools: Remove (null) value of "Sort order" for perf mem report<br />      perf evlist: Support using -f to override perf.data file ownership<br />      perf inject: Support using -f to override perf.data file ownership<br />      perf kmem: Support using -f to override perf.data file ownership<br />      perf kvm: Support using -f to override perf.data.guest file ownership<br />      perf lock: Support using -f to override perf.data file ownership<br />      perf mem: Support using -f to override perf.data file ownership<br />      perf script: Support using -f to override perf.data file ownership<br />      perf timechart: Support using -f to override perf.data file ownership<br />      perf trace: Support using -f to override perf.data file ownership<br />      perf data: Support using -f to override perf.data file ownership for 'convert'<br />      perf sched replay: Use struct task_desc instead of struct task_task for correct meaning<br />      perf sched replay: Increase the MAX_PID value to fix assertion failure problem<br />      perf sched replay: Alloc the memory of pid_to_task dynamically to adapt to the unexpected change of pid_max<br />      perf sched replay: Realloc the memory of pid_to_task stepwise to adapt to the different pid_max configurations<br />      perf sched replay: Fix the segmentation fault problem caused by pr_err in threads<br />      perf sched replay: Handle the dead halt of sem_wait when create_tasks() fails for any task<br />      perf sched replay: Fix the EMFILE error caused by the limitation of the maximum open files<br />      perf sched replay: Support using -f to override perf.data file ownership<br />      perf sched replay: Use replay_repeat to calculate the runavg of cpu usage instead of the default value 10<br /><br /><br /> arch/arm/kernel/hw_breakpoint.c                    |    2 +-<br /> arch/arm/plat-omap/counter_32k.c                   |    2 +-<br /> arch/arm64/kernel/hw_breakpoint.c                  |    2 +-<br /> arch/arm64/kernel/vdso.c                           |   10 +-<br /> arch/powerpc/perf/core-book3s.c                    |   13 +-<br /> arch/s390/kernel/time.c                            |   20 +-<br /> arch/sparc/kernel/time_32.c                        |    6 +-<br /> arch/tile/kernel/time.c                            |   24 +-<br /> arch/x86/include/asm/cpufeature.h                  |   10 +-<br /> arch/x86/include/asm/processor.h                   |    3 +<br /> arch/x86/include/uapi/asm/msr-index.h              |   18 +<br /> arch/x86/kernel/cpu/Makefile                       |    3 +-<br /> arch/x86/kernel/cpu/common.c                       |   39 +<br /> arch/x86/kernel/cpu/intel_pt.h                     |  131 ++<br /> arch/x86/kernel/cpu/perf_event.c                   |  205 ++-<br /> arch/x86/kernel/cpu/perf_event.h                   |  167 ++-<br /> arch/x86/kernel/cpu/perf_event_amd.c               |    9 +-<br /> arch/x86/kernel/cpu/perf_event_amd_ibs.c           |   12 +-<br /> arch/x86/kernel/cpu/perf_event_intel.c             |  908 ++++++++++++-<br /> arch/x86/kernel/cpu/perf_event_intel_bts.c         |  525 ++++++++<br /> arch/x86/kernel/cpu/perf_event_intel_cqm.c         | 1379 ++++++++++++++++++++<br /> arch/x86/kernel/cpu/perf_event_intel_ds.c          |   31 +-<br /> arch/x86/kernel/cpu/perf_event_intel_lbr.c         |  321 ++++-<br /> arch/x86/kernel/cpu/perf_event_intel_pt.c          | 1103 ++++++++++++++++<br /> .../x86/kernel/cpu/perf_event_intel_uncore_snbep.c |    3 +-<br /> arch/x86/kernel/cpu/scattered.c                    |    1 +<br /> arch/x86/kernel/kprobes/core.c                     |    9 +-<br /> arch/x86/kernel/vsyscall_gtod.c                    |   24 +-<br /> arch/x86/kvm/x86.c                                 |   14 +-<br /> drivers/clocksource/em_sti.c                       |    2 +-<br /> drivers/clocksource/sh_cmt.c                       |    2 +-<br /> drivers/clocksource/sh_tmu.c                       |    2 +-<br /> include/linux/bpf.h                                |   20 +-<br /> include/linux/clockchips.h                         |   21 +-<br /> include/linux/clocksource.h                        |   25 +-<br /> include/linux/ftrace_event.h                       |   14 +<br /> include/linux/perf_event.h                         |  121 +-<br /> include/linux/timekeeper_internal.h                |   16 +-<br /> include/linux/timekeeping.h                        |    6 +<br /> include/linux/watchdog.h                           |    8 +<br /> include/uapi/linux/bpf.h                           |    5 +<br /> include/uapi/linux/perf_event.h                    |  115 +-<br /> init/Kconfig                                       |    2 +-<br /> kernel/bpf/syscall.c                               |    7 +-<br /> kernel/events/core.c                               |  752 ++++++++---<br /> kernel/events/hw_breakpoint.c                      |    8 +-<br /> kernel/events/internal.h                           |   33 +<br /> kernel/events/ring_buffer.c                        |  327 ++++-<br /> kernel/time/clockevents.c                          |   88 +-<br /> kernel/time/clocksource.c                          |  170 ++-<br /> kernel/time/jiffies.c                              |    5 +-<br /> kernel/time/sched_clock.c                          |  236 ++--<br /> kernel/time/timekeeping.c                          |  345 +++--<br /> kernel/time/timer_list.c                           |   32 +-<br /> kernel/trace/Kconfig                               |    8 +<br /> kernel/trace/Makefile                              |    1 +<br /> kernel/trace/bpf_trace.c                           |  222 ++++<br /> kernel/trace/trace_kprobe.c                        |   10 +-<br /> kernel/trace/trace_uprobe.c                        |   10 +-<br /> kernel/watchdog.c                                  |   28 +<br /> lib/Kconfig.debug                                  |   13 +<br /> samples/bpf/Makefile                               |   16 +<br /> samples/bpf/bpf_helpers.h                          |    6 +<br /> samples/bpf/bpf_load.c                             |  125 +-<br /> samples/bpf/bpf_load.h                             |    3 +<br /> samples/bpf/libbpf.c                               |   14 +-<br /> samples/bpf/libbpf.h                               |    5 +-<br /> samples/bpf/sock_example.c                         |    2 +-<br /> samples/bpf/test_verifier.c                        |    2 +-<br /> samples/bpf/tracex1_kern.c                         |   50 +<br /> samples/bpf/tracex1_user.c                         |   25 +<br /> samples/bpf/tracex2_kern.c                         |   86 ++<br /> samples/bpf/tracex2_user.c                         |   95 ++<br /> samples/bpf/tracex3_kern.c                         |   89 ++<br /> samples/bpf/tracex3_user.c                         |  150 +++<br /> samples/bpf/tracex4_kern.c                         |   54 +<br /> samples/bpf/tracex4_user.c                         |   69 +<br /> tools/build/Build.include                          |   81 ++<br /> tools/build/Documentation/Build.txt                |  139 ++<br /> tools/build/Makefile.build                         |  130 ++<br /> tools/build/Makefile.feature                       |  171 +++<br /> .../feature-checks =&gt; build/feature}/.gitignore    |    1 +<br /> .../feature-checks =&gt; build/feature}/Makefile      |   31 +-<br /> .../feature-checks =&gt; build/feature}/test-all.c    |   19 +-<br /> .../feature}/test-backtrace.c                      |    0<br /> .../feature-checks =&gt; build/feature}/test-bionic.c |    0<br /> .../feature}/test-compile.c                        |    0<br /> .../feature}/test-cplus-demangle.c                 |    0<br /> .../feature-checks =&gt; build/feature}/test-dwarf.c  |    0<br /> .../feature}/test-fortify-source.c                 |    0<br /> .../feature-checks =&gt; build/feature}/test-glibc.c  |    0<br /> .../feature}/test-gtk2-infobar.c                   |    0<br /> .../feature-checks =&gt; build/feature}/test-gtk2.c   |    0<br /> .../feature-checks =&gt; build/feature}/test-hello.c  |    0<br /> .../feature}/test-libaudit.c                       |    0<br /> tools/build/feature/test-libbabeltrace.c           |    9 +<br /> .../feature-checks =&gt; build/feature}/test-libbfd.c |    0<br /> .../feature}/test-libdw-dwarf-unwind.c             |    0<br /> .../feature}/test-libelf-getphdrnum.c              |    0<br /> .../feature}/test-libelf-mmap.c                    |    0<br /> .../feature-checks =&gt; build/feature}/test-libelf.c |    0<br /> .../feature}/test-libnuma.c                        |    0<br /> .../feature}/test-libperl.c                        |    0<br /> .../feature}/test-libpython-version.c              |    0<br /> .../feature}/test-libpython.c                      |    0<br /> .../feature}/test-libslang.c                       |    0<br /> .../feature}/test-libunwind-debug-frame.c          |    0<br /> .../feature}/test-libunwind.c                      |    0<br /> tools/build/feature/test-lzma.c                    |   10 +<br /> .../feature}/test-pthread-attr-setaffinity-np.c    |    4 +-<br /> .../feature}/test-stackprotector-all.c             |    0<br /> .../feature}/test-sync-compare-and-swap.c          |    0<br /> .../feature}/test-timerfd.c                        |    0<br /> .../feature-checks =&gt; build/feature}/test-zlib.c   |    0<br /> tools/build/tests/ex/Build                         |    8 +<br /> tools/build/tests/ex/Makefile                      |   23 +<br /> tools/build/tests/ex/a.c                           |    5 +<br /> tools/build/tests/ex/arch/Build                    |    2 +<br /> tools/build/tests/ex/arch/e.c                      |    5 +<br /> tools/build/tests/ex/arch/f.c                      |    5 +<br /> tools/build/tests/ex/b.c                           |    5 +<br /> tools/build/tests/ex/c.c                           |    5 +<br /> tools/build/tests/ex/d.c                           |    5 +<br /> tools/build/tests/ex/empty/Build                   |    0<br /> tools/build/tests/ex/ex.c                          |   19 +<br /> tools/build/tests/run.sh                           |   42 +<br /> tools/lib/api/Build                                |    2 +<br /> tools/lib/api/Makefile                             |   58 +-<br /> tools/lib/api/fd/Build                             |    1 +<br /> tools/lib/api/fs/Build                             |    4 +<br /> tools/lib/api/fs/debugfs.c                         |   69 +-<br /> tools/lib/api/fs/debugfs.h                         |   13 +-<br /> tools/lib/api/fs/findfs.c                          |   63 +<br /> tools/lib/api/fs/findfs.h                          |   23 +<br /> tools/lib/api/fs/tracefs.c                         |   78 ++<br /> tools/lib/api/fs/tracefs.h                         |   21 +<br /> tools/lib/lockdep/Build                            |    1 +<br /> tools/lib/lockdep/Makefile                         |  132 +-<br /> tools/lib/traceevent/Build                         |   17 +<br /> tools/lib/traceevent/Makefile                      |  169 +--<br /> tools/lib/traceevent/event-parse.c                 |  305 ++++-<br /> tools/lib/traceevent/event-parse.h                 |   24 +-<br /> tools/lib/traceevent/event-plugin.c                |   60 +-<br /> tools/lib/traceevent/kbuffer-parse.c               |   12 +-<br /> tools/lib/traceevent/kbuffer.h                     |    1 +<br /> tools/lib/traceevent/parse-filter.c                |    2 +<br /> tools/lib/traceevent/trace-seq.c                   |   13 +-<br /> tools/perf/.gitignore                              |    1 +<br /> tools/perf/Build                                   |   44 +<br /> tools/perf/Documentation/Build.txt                 |   49 +<br /> tools/perf/Documentation/perf-buildid-cache.txt    |   24 +-<br /> tools/perf/Documentation/perf-data.txt             |   40 +<br /> tools/perf/Documentation/perf-diff.txt             |    8 +<br /> tools/perf/Documentation/perf-kmem.txt             |    4 +<br /> tools/perf/Documentation/perf-list.txt             |    7 +<br /> tools/perf/Documentation/perf-probe.txt            |   16 +-<br /> tools/perf/Documentation/perf-record.txt           |   30 +-<br /> tools/perf/Documentation/perf-report.txt           |    5 +<br /> tools/perf/Documentation/perf-script.txt           |    6 +<br /> tools/perf/Documentation/perf-trace.txt            |    6 +<br /> tools/perf/Documentation/perf.txt                  |    7 +-<br /> tools/perf/MANIFEST                                |    1 +<br /> tools/perf/Makefile                                |    4 +-<br /> tools/perf/Makefile.perf                           |  622 ++-------<br /> tools/perf/arch/Build                              |    2 +<br /> tools/perf/arch/arm/Build                          |    2 +<br /> tools/perf/arch/arm/Makefile                       |   11 -<br /> tools/perf/arch/arm/tests/Build                    |    2 +<br /> tools/perf/arch/arm/util/Build                     |    4 +<br /> tools/perf/arch/arm64/Build                        |    1 +<br /> tools/perf/arch/arm64/Makefile                     |    4 -<br /> tools/perf/arch/arm64/util/Build                   |    2 +<br /> tools/perf/arch/powerpc/Build                      |    1 +<br /> tools/perf/arch/powerpc/Makefile                   |    3 -<br /> tools/perf/arch/powerpc/util/Build                 |    4 +<br /> tools/perf/arch/s390/Build                         |    1 +<br /> tools/perf/arch/s390/Makefile                      |    3 -<br /> tools/perf/arch/s390/util/Build                    |    4 +<br /> tools/perf/arch/sh/Build                           |    1 +<br /> tools/perf/arch/sh/Makefile                        |    1 -<br /> tools/perf/arch/sh/util/Build                      |    1 +<br /> tools/perf/arch/sparc/Build                        |    1 +<br /> tools/perf/arch/sparc/Makefile                     |    1 -<br /> tools/perf/arch/sparc/util/Build                   |    1 +<br /> tools/perf/arch/x86/Build                          |    2 +<br /> tools/perf/arch/x86/Makefile                       |   15 -<br /> tools/perf/arch/x86/tests/Build                    |    2 +<br /> tools/perf/arch/x86/util/Build                     |    8 +<br /> tools/perf/bench/Build                             |   11 +<br /> tools/perf/builtin-annotate.c                      |    2 +-<br /> tools/perf/builtin-buildid-cache.c                 |  107 +-<br /> tools/perf/builtin-buildid-list.c                  |    2 +-<br /> tools/perf/builtin-data.c                          |  123 ++<br /> tools/perf/builtin-diff.c                          |    6 +-<br /> tools/perf/builtin-evlist.c                        |    2 +<br /> tools/perf/builtin-help.c                          |   17 +-<br /> tools/perf/builtin-inject.c                        |   16 +-<br /> tools/perf/builtin-kmem.c                          |   38 +-<br /> tools/perf/builtin-kvm.c                           |   15 +-<br /> tools/perf/builtin-list.c                          |   28 +-<br /> tools/perf/builtin-lock.c                          |    7 +-<br /> tools/perf/builtin-mem.c                           |    7 +-<br /> tools/perf/builtin-probe.c                         |   19 +-<br /> tools/perf/builtin-record.c                        |  108 +-<br /> tools/perf/builtin-report.c                        |   16 +-<br /> tools/perf/builtin-sched.c                         |  101 +-<br /> tools/perf/builtin-script.c                        |   34 +-<br /> tools/perf/builtin-stat.c                          |   98 +-<br /> tools/perf/builtin-timechart.c                     |   12 +-<br /> tools/perf/builtin-top.c                           |   10 +-<br /> tools/perf/builtin-trace.c                         |  281 +++-<br /> tools/perf/builtin.h                               |    1 +<br /> tools/perf/command-list.txt                        |    1 +<br /> tools/perf/config/Makefile                         |  293 ++---<br /> tools/perf/config/Makefile.arch                    |   29 +-<br /> tools/perf/config/utilities.mak                    |    3 +-<br /> tools/perf/perf-completion.sh                      |   94 +-<br /> tools/perf/perf.c                                  |   29 +<br /> tools/perf/perf.h                                  |    5 +-<br /> tools/perf/scripts/Build                           |    2 +<br /> tools/perf/scripts/perl/Perf-Trace-Util/Build      |    3 +<br /> tools/perf/scripts/python/Perf-Trace-Util/Build    |    3 +<br /> tools/perf/tests/Build                             |   43 +<br /> tools/perf/tests/attr/base-record                  |    2 +-<br /> tools/perf/tests/attr/base-stat                    |    2 +-<br /> tools/perf/tests/builtin-test.c                    |    9 +-<br /> tools/perf/tests/dso-data.c                        |   22 +-<br /> tools/perf/tests/kmod-path.c                       |   73 ++<br /> tools/perf/tests/make                              |    2 +-<br /> tools/perf/tests/open-syscall-all-cpus.c           |    7 +-<br /> tools/perf/tests/open-syscall.c                    |    7 +-<br /> tools/perf/tests/parse-events.c                    |   53 +-<br /> tools/perf/tests/tests.h                           |    1 +<br /> tools/perf/ui/Build                                |   14 +<br /> tools/perf/ui/browsers/Build                       |   10 +<br /> tools/perf/ui/browsers/annotate.c                  |    8 +-<br /> tools/perf/ui/browsers/hists.c                     |   88 +-<br /> tools/perf/ui/gtk/Build                            |    9 +<br /> tools/perf/ui/tui/Build                            |    4 +<br /> tools/perf/util/Build                              |  145 ++<br /> tools/perf/util/annotate.c                         |   32 +-<br /> tools/perf/util/build-id.c                         |  209 ++-<br /> tools/perf/util/build-id.h                         |    8 +-<br /> tools/perf/util/cache.h                            |    1 +<br /> tools/perf/util/callchain.c                        |    8 +<br /> tools/perf/util/callchain.h                        |    1 +<br /> tools/perf/util/cloexec.c                          |    6 +<br /> tools/perf/util/cloexec.h                          |    6 +<br /> tools/perf/util/data-convert-bt.c                  |  857 ++++++++++++<br /> tools/perf/util/data-convert-bt.h                  |    8 +<br /> tools/perf/util/db-export.c                        |    4 +-<br /> tools/perf/util/db-export.h                        |    3 +-<br /> tools/perf/util/debug.c                            |    2 +<br /> tools/perf/util/debug.h                            |    1 +<br /> tools/perf/util/dso.c                              |  159 ++-<br /> tools/perf/util/dso.h                              |   49 +-<br /> tools/perf/util/dwarf-aux.c                        |   29 +-<br /> tools/perf/util/dwarf-aux.h                        |    3 +<br /> tools/perf/util/event.c                            |  190 ++-<br /> tools/perf/util/event.h                            |    1 -<br /> tools/perf/util/evlist.c                           |   49 +-<br /> tools/perf/util/evlist.h                           |   14 +-<br /> tools/perf/util/evsel.c                            |  354 ++---<br /> tools/perf/util/evsel.h                            |   11 +<br /> tools/perf/util/header.c                           |   35 +-<br /> tools/perf/util/hist.c                             |   11 +-<br /> tools/perf/util/hist.h                             |   11 +-<br /> tools/perf/util/kvm-stat.h                         |    1 +<br /> tools/perf/util/lzma.c                             |   95 ++<br /> tools/perf/util/machine.c                          |  332 +++--<br /> tools/perf/util/machine.h                          |    2 +-<br /> tools/perf/util/map.c                              |   20 +<br /> tools/perf/util/map.h                              |    6 +-<br /> tools/perf/util/ordered-events.c                   |   65 +-<br /> tools/perf/util/ordered-events.h                   |   19 +-<br /> tools/perf/util/parse-events.c                     |  242 ++--<br /> tools/perf/util/parse-events.h                     |   13 +-<br /> tools/perf/util/parse-events.l                     |    2 +-<br /> tools/perf/util/parse-options.c                    |   32 +-<br /> tools/perf/util/parse-options.h                    |    2 +<br /> tools/perf/util/probe-event.c                      |  373 +++++-<br /> tools/perf/util/probe-event.h                      |    6 +-<br /> tools/perf/util/probe-finder.c                     |   25 +-<br /> tools/perf/util/python-ext-sources                 |    1 -<br /> tools/perf/util/scripting-engines/Build            |    6 +<br /> .../perf/util/scripting-engines/trace-event-perl.c |   10 +-<br /> .../util/scripting-engines/trace-event-python.c    |   21 +-<br /> tools/perf/util/session.c                          |  320 +++--<br /> tools/perf/util/session.h                          |   18 +-<br /> tools/perf/util/setup.py                           |    2 +-<br /> tools/perf/util/sort.c                             |    9 +<br /> tools/perf/util/sort.h                             |    2 +-<br /> tools/perf/util/symbol-elf.c                       |   87 +-<br /> tools/perf/util/symbol-minimal.c                   |    7 +-<br /> tools/perf/util/symbol.c                           |   65 +-<br /> tools/perf/util/symbol.h                           |    8 +<br /> tools/perf/util/target.c                           |    7 +-<br /> tools/perf/util/thread.c                           |   15 +-<br /> tools/perf/util/thread.h                           |   24 +<br /> tools/perf/util/tool.h                             |    8 +-<br /> tools/perf/util/trace-event-parse.c                |   12 +-<br /> tools/perf/util/trace-event-scripting.c            |    1 -<br /> tools/perf/util/trace-event.h                      |    6 +-<br /> tools/perf/util/unwind-libunwind.c                 |    8 +-<br /> tools/perf/util/util.c                             |   67 +-<br /> tools/perf/util/util.h                             |    6 +<br /> 306 files changed, 13940 insertions(+), 3266 deletions(-)<br /> create mode 100644 arch/x86/kernel/cpu/intel_pt.h<br /> create mode 100644 arch/x86/kernel/cpu/perf_event_intel_bts.c<br /> create mode 100644 arch/x86/kernel/cpu/perf_event_intel_cqm.c<br /> create mode 100644 arch/x86/kernel/cpu/perf_event_intel_pt.c<br /> create mode 100644 kernel/trace/bpf_trace.c<br /> create mode 100644 samples/bpf/tracex1_kern.c<br /> create mode 100644 samples/bpf/tracex1_user.c<br /> create mode 100644 samples/bpf/tracex2_kern.c<br /> create mode 100644 samples/bpf/tracex2_user.c<br /> create mode 100644 samples/bpf/tracex3_kern.c<br /> create mode 100644 samples/bpf/tracex3_user.c<br /> create mode 100644 samples/bpf/tracex4_kern.c<br /> create mode 100644 samples/bpf/tracex4_user.c<br /> create mode 100644 tools/build/Build.include<br /> create mode 100644 tools/build/Documentation/Build.txt<br /> create mode 100644 tools/build/Makefile.build<br /> create mode 100644 tools/build/Makefile.feature<br /> rename tools/{perf/config/feature-checks =&gt; build/feature}/.gitignore (52%)<br /> rename tools/{perf/config/feature-checks =&gt; build/feature}/Makefile (72%)<br /> rename tools/{perf/config/feature-checks =&gt; build/feature}/test-all.c (87%)<br /> rename tools/{perf/config/feature-checks =&gt; build/feature}/test-backtrace.c (100%)<br /> rename tools/{perf/config/feature-checks =&gt; build/feature}/test-bionic.c (100%)<br /> rename tools/{perf/config/feature-checks =&gt; build/feature}/test-compile.c (100%)<br /> rename tools/{perf/config/feature-checks =&gt; build/feature}/test-cplus-demangle.c (100%)<br /> rename tools/{perf/config/feature-checks =&gt; build/feature}/test-dwarf.c (100%)<br /> rename tools/{perf/config/feature-checks =&gt; build/feature}/test-fortify-source.c (100%)<br /> rename tools/{perf/config/feature-checks =&gt; build/feature}/test-glibc.c (100%)<br /> rename tools/{perf/config/feature-checks =&gt; build/feature}/test-gtk2-infobar.c (100%)<br /> rename tools/{perf/config/feature-checks =&gt; build/feature}/test-gtk2.c (100%)<br /> rename tools/{perf/config/feature-checks =&gt; build/feature}/test-hello.c (100%)<br /> rename tools/{perf/config/feature-checks =&gt; build/feature}/test-libaudit.c (100%)<br /> create mode 100644 tools/build/feature/test-libbabeltrace.c<br /> rename tools/{perf/config/feature-checks =&gt; build/feature}/test-libbfd.c (100%)<br /> rename tools/{perf/config/feature-checks =&gt; build/feature}/test-libdw-dwarf-unwind.c (100%)<br /> rename tools/{perf/config/feature-checks =&gt; build/feature}/test-libelf-getphdrnum.c (100%)<br /> rename tools/{perf/config/feature-checks =&gt; build/feature}/test-libelf-mmap.c (100%)<br /> rename tools/{perf/config/feature-checks =&gt; build/feature}/test-libelf.c (100%)<br /> rename tools/{perf/config/feature-checks =&gt; build/feature}/test-libnuma.c (100%)<br /> rename tools/{perf/config/feature-checks =&gt; build/feature}/test-libperl.c (100%)<br /> rename tools/{perf/config/feature-checks =&gt; build/feature}/test-libpython-version.c (100%)<br /> rename tools/{perf/config/feature-checks =&gt; build/feature}/test-libpython.c (100%)<br /> rename tools/{perf/config/feature-checks =&gt; build/feature}/test-libslang.c (100%)<br /> rename tools/{perf/config/feature-checks =&gt; build/feature}/test-libunwind-debug-frame.c (100%)<br /> rename tools/{perf/config/feature-checks =&gt; build/feature}/test-libunwind.c (100%)<br /> create mode 100644 tools/build/feature/test-lzma.c<br /> rename tools/{perf/config/feature-checks =&gt; build/feature}/test-pthread-attr-setaffinity-np.c (77%)<br /> rename tools/{perf/config/feature-checks =&gt; build/feature}/test-stackprotector-all.c (100%)<br /> rename tools/{perf/config/feature-checks =&gt; build/feature}/test-sync-compare-and-swap.c (100%)<br /> rename tools/{perf/config/feature-checks =&gt; build/feature}/test-timerfd.c (100%)<br /> rename tools/{perf/config/feature-checks =&gt; build/feature}/test-zlib.c (100%)<br /> create mode 100644 tools/build/tests/ex/Build<br /> create mode 100644 tools/build/tests/ex/Makefile<br /> create mode 100644 tools/build/tests/ex/a.c<br /> create mode 100644 tools/build/tests/ex/arch/Build<br /> create mode 100644 tools/build/tests/ex/arch/e.c<br /> create mode 100644 tools/build/tests/ex/arch/f.c<br /> create mode 100644 tools/build/tests/ex/b.c<br /> create mode 100644 tools/build/tests/ex/c.c<br /> create mode 100644 tools/build/tests/ex/d.c<br /> create mode 100644 tools/build/tests/ex/empty/Build<br /> create mode 100644 tools/build/tests/ex/ex.c<br /> create mode 100755 tools/build/tests/run.sh<br /> create mode 100644 tools/lib/api/Build<br /> create mode 100644 tools/lib/api/fd/Build<br /> create mode 100644 tools/lib/api/fs/Build<br /> create mode 100644 tools/lib/api/fs/findfs.c<br /> create mode 100644 tools/lib/api/fs/findfs.h<br /> create mode 100644 tools/lib/api/fs/tracefs.c<br /> create mode 100644 tools/lib/api/fs/tracefs.h<br /> create mode 100644 tools/lib/lockdep/Build<br /> create mode 100644 tools/lib/traceevent/Build<br /> create mode 100644 tools/perf/Build<br /> create mode 100644 tools/perf/Documentation/Build.txt<br /> create mode 100644 tools/perf/Documentation/perf-data.txt<br /> create mode 100644 tools/perf/arch/Build<br /> create mode 100644 tools/perf/arch/arm/Build<br /> create mode 100644 tools/perf/arch/arm/tests/Build<br /> create mode 100644 tools/perf/arch/arm/util/Build<br /> create mode 100644 tools/perf/arch/arm64/Build<br /> create mode 100644 tools/perf/arch/arm64/util/Build<br /> create mode 100644 tools/perf/arch/powerpc/Build<br /> create mode 100644 tools/perf/arch/powerpc/util/Build<br /> create mode 100644 tools/perf/arch/s390/Build<br /> create mode 100644 tools/perf/arch/s390/util/Build<br /> create mode 100644 tools/perf/arch/sh/Build<br /> create mode 100644 tools/perf/arch/sh/util/Build<br /> create mode 100644 tools/perf/arch/sparc/Build<br /> create mode 100644 tools/perf/arch/sparc/util/Build<br /> create mode 100644 tools/perf/arch/x86/Build<br /> create mode 100644 tools/perf/arch/x86/tests/Build<br /> create mode 100644 tools/perf/arch/x86/util/Build<br /> create mode 100644 tools/perf/bench/Build<br /> create mode 100644 tools/perf/builtin-data.c<br /> create mode 100644 tools/perf/scripts/Build<br /> create mode 100644 tools/perf/scripts/perl/Perf-Trace-Util/Build<br /> create mode 100644 tools/perf/scripts/python/Perf-Trace-Util/Build<br /> create mode 100644 tools/perf/tests/Build<br /> create mode 100644 tools/perf/tests/kmod-path.c<br /> create mode 100644 tools/perf/ui/Build<br /> create mode 100644 tools/perf/ui/browsers/Build<br /> create mode 100644 tools/perf/ui/gtk/Build<br /> create mode 100644 tools/perf/ui/tui/Build<br /> create mode 100644 tools/perf/util/Build<br /> create mode 100644 tools/perf/util/data-convert-bt.c<br /> create mode 100644 tools/perf/util/data-convert-bt.h<br /> create mode 100644 tools/perf/util/lzma.c<br /> create mode 100644 tools/perf/util/scripting-engines/Build<br /><br />[ ... patch skipped due to lkml size limits. ... ]<br /><br /><br /></pre></td><td width="32" rowspan="2" class="c" valign="top"><img src="/images/icornerr.gif" width="32" height="32" alt="\" /></td></tr><tr><td align="right" valign="bottom">
  
 </td></tr><tr><td align="right" valign="bottom"> </td><td class="c" valign="bottom" style="padding-bottom: 0px"><img src="/images/bcornerl.gif" width="32" height="32" alt="\" /></td><td class="c"> </td><td class="c" valign="bottom" style="padding-bottom: 0px"><img src="/images/bcornerr.gif" width="32" height="32" alt="/" /></td></tr><tr><td align="right" valign="top" colspan="2">
 
</td><td class="lm">Last update: 2015-04-14 14:41    [from the cache]<br />©2003-2020 <a href="http://blog.jasper.es/"><span itemprop="editor">Jasper Spaans</span></a>|hosted at <a href="https://www.digitalocean.com/?refcode=9a8e99d24cf9">Digital Ocean</a> and my Meterkast|<a href="http://blog.jasper.es/categories.html#lkml-ref">Read the blog</a></td><td> </td></tr></table><script language="javascript" src="/js/styleswitcher.js" type="text/javascript"></script></body></html>