lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Date:   Mon, 4 Sep 2017 09:15:53 +0200
From:   Ingo Molnar <mingo@...nel.org>
To:     Linus Torvalds <torvalds@...ux-foundation.org>
Cc:     linux-kernel@...r.kernel.org,
        Peter Zijlstra <a.p.zijlstra@...llo.nl>,
        Arnaldo Carvalho de Melo <acme@...radead.org>,
        Thomas Gleixner <tglx@...utronix.de>,
        Andrew Morton <akpm@...ux-foundation.org>
Subject: [GIT PULL] perf changes for v4.14

Linus,

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: 1b2f76d77a277bb70d38ad0991ed7f16bbc115a9 Merge tag 'perf-core-for-mingo-4.14-20170829' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/core

Kernel side changes:

    - Add branch type profiling/tracing support. (Jin Yao)

    - Add the PERF_SAMPLE_PHYS_ADDR ABI to allow the tracing/profiling of 
      physical memory addresses, where the PMU supports it. (Kan Liang)

    - Export some PMU capability details in the new 
      /sys/bus/event_source/devices/cpu/caps/ sysfs directory. (Andi Kleen)

    - Aux data fixes and updates (Will Deacon)

    - kprobes fixes and updates (Masami Hiramatsu)

    - AMD uncore PMU driver fixes and updates (Janakarajan Natarajan)

On the tooling side, here's a (limited!) list of highlights - there were many 
other changes that I could not list, see the shortlog and git history for details:

UI improvements:

    - Implement a visual marker for fused x86 instructions in the annotate
      TUI browser, available now in 'perf report', more work needed to have
      it available as well in 'perf top' (Jin Yao)

      Further explanation from one of Jin's patches:

           │   ┌──cmpl   $0x0,argp_program_version_hook
     81.93 │   ├──je     20
           │   │  lock   cmpxchg %esi,0x38a9a4(%rip)
           │   │↓ jne    29
           │   │↓ jmp    43
     11.47 │20:└─→cmpxch %esi,0x38a999(%rip)

      That means the cmpl+je is a fused instruction pair and they should be
      considered together.

    - Record the branch type and then show statistics and info about
      in callchain entries (Jin Yao)

      Example from one of Jin's patches:

      # perf record -g -j any,save_type
      # perf report --branch-history --stdio --no-children

      38.50%  div.c:45                [.] main                    div
              |
              ---main div.c:42 (RET CROSS_2M cycles:2)
                 compute_flag div.c:28 (cycles:2)
                 compute_flag div.c:27 (RET CROSS_2M cycles:1)
                 rand rand.c:28 (cycles:1)
                 rand rand.c:28 (RET CROSS_2M cycles:1)
                 __random random.c:298 (cycles:1)
                 __random random.c:297 (COND_BWD CROSS_2M cycles:1)
                 __random random.c:295 (cycles:1)
                 __random random.c:295 (COND_BWD CROSS_2M cycles:1)
                 __random random.c:295 (cycles:1)
                 __random random.c:295 (RET CROSS_2M cycles:9)

namespaces support:

    - Add initial support for namespaces, using setns to access files in
      namespaces, grabbing their build-ids, etc. (Krister Johansen)

perf trace enhancements:

    - Beautify pkey_{alloc,free,mprotect} arguments in 'perf trace' (Arnaldo Carvalho de Melo)

    - Add initial 'clone' syscall args beautifier in 'perf trace' (Arnaldo Carvalho de Melo)

    - Ignore 'fd' and 'offset' args for MAP_ANONYMOUS in 'perf trace'
      (Arnaldo Carvalho de Melo)

    - Beautifiers for the 'cmd' arg of several ioctl types, including:
      sound, DRM, KVM, vhost virtio and perf_events. (Arnaldo Carvalho de Melo)

    - Add PERF_SAMPLE_CALLCHAIN and PERF_RECORD_MMAP[2] to 'perf data' CTF
      conversion, allowing CTF trace visualization tools to show callchains
      and to resolve symbols (Geneviève Bastien)

    - Beautify the fcntl syscall, which is an interesting one in the sense
      that infrastructure had to be put in place to change the formatters of
      some arguments according to the value in a previous one, i.e. cmd
      dictates how arg and the syscall return will be formatted.
      (Arnaldo Carvalho de Melo

perf stat enhancements:

    - Use group read for event groups in 'perf stat', reducing overhead when
      groups are defined in the event specification, i.e. when using {} to
      enclose a list of events, asking them to be read at the same time,
      e.g.: "perf stat -e '{cycles,instructions}'" (Jiri Olsa)

pipe mode improvements:

    - Process tracing data in 'perf annotate' pipe mode (David Carrillo-Cisneros)

    - Add header record types to pipe-mode, now this command:

      $ perf record -o - -e cycles sleep 1 | perf report --stdio --header

      Will show the same as in non-pipe mode, i.e. involving a perf.data
      file (David Carrillo-Cisneros)

Vendor specific hardware event support updates/enhancements:

    - Update POWER9 vendor events tables (Sukadev Bhattiprolu)

    - Add POWER9 PMU events Sukadev (Bhattiprolu)

    - Support additional POWER8+ PVR in PMU mapfile (Shriya)

    - Add Skylake server uncore JSON vendor events (Andi Kleen)

    - Support exporting Intel PT data to sqlite3 with python perf scripts,
      this is in addition to the postgresql support that was already there (Adrian Hunter)



 Thanks,

	Ingo

------------------>
Adrian Hunter (5):
      perf scripts python: Fix missing call_path_id in export-to-postgresql script
      perf scripts python: Fix query in call-graph-from-postgresql.py
      perf script python: Add support for exporting to sqlite3
      perf script python: Rename call-graph-from-postgresql.py to call-graph-from-sql.py
      perf script python: Add support for sqlite3 to call-graph-from-sql.py

Alexander Shishkin (1):
      perf/core, pt, bts: Get rid of itrace_started

Andi Kleen (19):
      perf jevents: Make build fail on JSON parse error
      perf stat: Fix saved values rbtree lookup
      perf tools: Add missing newline to expr parser error messages
      perf jevents: Support FCMask and PortMask
      perf xyarray: Save max_x, max_y
      perf evsel: Fix buffer overflow while freeing events
      perf bpf: Tighten detection of BPF events
      perf tools: Add utility function to detect SMT status
      perf tools: Expression parser enhancements for metrics
      perf tools: Increase maximum number of events in expressions
      perf tools: Dedup events in expression parsing
      perf vendor events: Add core event list for Skylake Server
      perf vendor events: Add Skylake server uncore event list
      perf tools: Add support for printing new mem_info encodings
      perf test: Add test cases for new data source encoding
      perf/x86: Move Nehalem PEBS code to flag
      perf/x86: Fix data source decoding for Skylake
      perf/x86: Only show format attributes when supported
      perf/x86: Export some PMU attributes in caps/ directory

Arnaldo Carvalho de Melo (98):
      perf trace: Remove F_ from some of the fcntl command strings
      perf trace: Beautify linux specific fcntl commands
      tools: Update include/uapi/linux/fcntl.h copy from the kernel
      perf trace beauty: Export the strarrays scnprintf method
      perf trace: Only build tools/perf/trace/beauty/ when building 'perf trace'
      perf trace beauty: Mask ignored fcntl 'arg' parameter
      perf trace beauty: Allow accessing syscall args values in a syscall arg formatter
      perf trace beauty: Export the "int" and "hex" syscall arg formatters
      perf trace beauty: Introduce syscall arg beautifier for long integers
      tools include uapi asm-generic: Grab a copy of fcntl.h
      perf trace beauty fcntl: Basic 'arg' beautifier
      perf trace: Beautify new write hint fcntl commands
      perf beauty open: Detach the syscall_arg agnostic bits from the flags formatter
      perf trace: Allow syscall_arg beautifiers to set a different return formatter
      perf trace beauty open flags: Support O_TMPFILE and O_NOFOLLOW
      perf trace beauty open flags: Do not depend on the system's O_LARGEFILE define
      perf trace beauty fcntl: Beautify F_GETFL return value
      perf trace beauty open flags: Move RDRW to the start of the output
      perf trace beauty fcntl flags: Beautify F_SETFL arg
      perf trace beauty fcntl: Beautify F_[GS]ETFD arg/return value
      perf trace beauty: Give syscall return beautifier more context
      perf trace beauty: Export the fd beautifier for use in more places
      perf trace beauty fcntl: Augment the return of F_DUPFD(_CLOEXEC)
      perf trace beauty: Export the pid beautifier for use in more places
      perf trace beauty fcntl: Beautify F_GETOWN and F_SETOWN
      tools include uapi x86: Grab a copy of unistd.h
      tools include uapi x86: Add __NR_setns, if missing
      tools build: Add test for setns()
      perf evsel: Allow asking for max precise_ip in new_cycles()
      perf evlist: Allow asking for max precise_ip in add_default()
      perf record: Do not ask for precise_ip with --no-samples
      perf test sdt: Handle realpath() failure
      perf trace beauty: Export strarray for use in per-object beautifiers
      perf trace beauty fcntl: Beautify F_GETLEASE and F_SETLEASE arg/return
      perf trace: Group per syscall arg formatter info into one struct
      perf trace: Allow syscall arg formatters to request non suppression of zeros
      perf trace beauty fcntl: Do not suppress 'cmd' when zero, should be DUPFD
      perf trace beauty fcntl: Beautify the 'arg' for DUPFD
      perf trace beauty: Simplify syscall return formatting
      perf trace: Add missing ' = ' in the default formatting of syscall returns
      perf trace beauty mmap: Ignore 'fd' and 'offset' args for MAP_ANONYMOUS
      perf trace: Allow allocating sc->arg_fmt even without the syscall tracepoint
      perf trace: Use the syscall_fmt formatters without a tracepoint
      perf trace: Ditch __syscall__arg_val() variant, not needed anymore
      perf trace: Allow specifying number of syscall args for tracepointless syscalls
      perf trace: Allow specifying names to syscall arguments formatters
      tools include uapi: Grab a copy of linux/sched.h
      perf trace beauty clone: Beautify syscall arguments
      perf trace beauty clone: Suppress unused args according to 'flags' arg
      perf trace: Introduce filter_loop_pids()
      perf trace: Filter out 'sshd' in the tracer ancestry in syswide tracing
      tools include: Adopt strstarts() from the kernel
      tools lib: Update copy of strtobool from the kernel sources
      perf cgroup: Fix refcount usage
      perf tools: Add tools/include/uapi/asm-generic/fcntl.h to the MANIFEST
      perf annotate: Do not overwrite perf_sample->weight
      perf annotate stdio: Set enough columns for --show-total-period
      perf annotate: Fix storing per line sym_hist_entry
      perf annotate TUI: Use sym_hist_entry in disasm_line_samples
      perf annotate TUI: Clarify calculation of column header widths
      perf annotate TUI: Set appropriate column width for period/percent
      tools headers: Fixup tools/include/uapi/linux/bpf.h copy of kernel ABI header
      tools include uapi: Grab a copy of asm-generic/ioctls.h
      tools perf: Do not check spaces/blank lines when checking header file copy drift
      tools headers: Fixup tools/include/uapi/linux/bpf.h copy of kernel ABI header
      perf trace beauty ioctl: Improve 'cmd' beautifier
      tools include uapi: Grab copies of drm/{drm,i915_drm}.h
      perf trace beauty ioctl: Beautify DRM ioctl cmds
      tools include uapi: Grab a copy of sound/asound.h
      perf trace beautify ioctl: Beautify sound ioctl's 'cmd' arg
      tools include uapi: Grab a copy of linux/kvm.h
      perf trace beautify ioctl: Beautify KVM ioctl's 'cmd' arg
      perf trace beauty ioctl: Pass _IOC_DIR to the per _IOC_TYPE scnprintf
      tools include uapi: Grab a copy of linux/vhost.h
      perf trace beautify ioctl: Beautify vhost virtio ioctl's 'cmd' arg
      perf trace beautify ioctl: Beautify perf ioctl's 'cmd' arg
      perf test: Make 'list' subcommand match main 'perf test' numbering/matching
      perf test: Add 'struct test *' to the test functions
      perf test: Add infrastructure to run shell based tests
      perf test: Make 'list' use same filtering code as main 'perf test'
      perf test shell: Add 'probe_vfs_getname' shell test
      perf test shell: Install shell tests
      perf test shell: Move vfs_getname probe function to lib
      perf test shell: Add test using probe:vfs_getname and verifying results
      perf test shell: Add test using vfs_getname + 'perf trace'
      perf test shell: Add uprobes + backtrace ping test
      perf tests shell: Remove duplicate skip_if_no_debuginfo() function
      perf test shell: Check if 'perf probe' is available, skip tests if not
      perf test shell vfs_getname: Skip for tools built with NO_LIBDWARF=1
      perf trace: Fix off by one string allocation problem
      perf events parse: Remove some needless local variables
      perf events parse: Rename parsing state struct to clearer name
      perf events parse: Use just one parse events state struct
      perf events parse: Rename parse_events_parse arguments
      perf tools: Remove unused cpu_relax() macros
      perf tools: Use default CPUINFO_PROC where it fits
      tools headers: Sync cpu features kernel ABI headers with tooling headers
      perf trace beauty: Beautify pkey_{alloc,free,mprotect} arguments

Arun Kalyanasundaram (5):
      perf script python: Allocate memory only if handler exists
      perf script python: Refactor creation of perf sample dict
      perf script python: Add sample_read to dict
      perf script python: Add perf_sample dict to tracepoint handlers
      perf script python: Generate hooks with additional argument

Dan Carpenter (1):
      perf script: Remove some bogus error handling

Daniel Díaz (1):
      tools lib bpf: Fix double file test in Makefile

David Carrillo-Cisneros (24):
      perf header: Encapsulate read and swap
      perf header: Add PROCESS_STR_FUN macro
      perf header: Fail on write_padded error
      perf util: Add const modifier to buf in "writen" function
      perf header: Revamp do_write()
      perf header: Add struct feat_fd for write
      perf header: Use struct feat_fd for print
      perf header: Use struct feat_fd to process header records
      perf header: Don't pass struct perf_file_section to process_##_feat
      perf header: Use struct feat_fd in read header records
      perf header: Make write_pmu_mappings pipe-mode friendly
      perf header: Add a buffer to struct feat_fd
      perf header: Change FEAT_OP* macros
      perf tool: Add show_feature_header to perf_tool
      perf tools: Add feature header record to pipe-mode
      perf header: Add event desc to pipe-mode header
      perf tools: Add EXCLUDE_EXTLIBS and EXTRA_PERFLIBS to makefile
      perf annotate: Process tracing data in pipe mode
      perf sort: Use default sort if evlist is empty
      tools build tests: Don't hardcode gcc name
      perf tools: Allow external definition of flex and bison binary names
      tools lib: Allow external definition of CC, AR and LD
      perf tools: Robustify detection of clang binary
      perf tools: Pass full path of FEATURES_DUMP

Geneviève Bastien (3):
      perf data: Add callchain to CTF conversion
      perf data: Add mmap[2] events to CTF conversion
      perf data: Add doc when no conversion support compiled

Ingo Molnar (3):
      perf build: Clarify header version warning message
      perf build: Clarify open-coded header version warning message
      tools headers: Sync kernel ABI headers with tooling headers

Jack Henschel (1):
      perf stat: Fix path to PMU formats in documentation

Janakarajan Natarajan (2):
      perf/x86/amd/uncore: Rename cpufeatures macro for cache counters
      perf/x86/amd/uncore: Get correct number of cores sharing last level cache

Jesper Dangaard Brouer (1):
      tracing, perf: Adjust code layout in get_recursion_context()

Jin Yao (12):
      perf annotate: Check for fused instructions
      perf annotate: Implement visual marker for macro fusion
      perf report: Enable finding kernel inline functions
      perf/core: Define the common branch type classification
      perf/x86/intel: Record branch type
      perf record: Create a new option save_type in --branch-filter
      perf report: Refactor the branch info printing code
      perf util: Create branch.c/.h for common branch functions
      perf report: Show branch type statistics for stdio mode
      perf report: Show branch type in callchain entry
      perf report: Make --branch-history work without callgraphs(-g) option in perf record
      perf report: Tag branch type/flag on "to" and tag cycles on "from"

Jiri Olsa (25):
      perf tests attr: Do not store failed events
      perf tests attr: Add test_attr__ready function
      perf tests attr: Make compare_data global
      perf tests attr: Rename compare_data to data_equal
      perf tests attr: Add 1s for exclude_kernel and task base bits
      perf tests attr: Fix record dwarf test
      perf tests attr: Fix no-delay test
      perf tests attr: Add proper return values
      perf tests attr: Fix cpu test disabled term setup
      perf tests attr: Fix sample_period setup
      perf tests attr: Fix precise_ip setup
      perf tests attr: Fix stat sample_type setup
      perf tests attr: Add optional term
      perf evsel: Add verbose output for sys_perf_event_open fallback
      perf tools: Add perf_evsel__read_size function
      perf evsel: Add read_counter()
      perf stat: Use group read for event groups
      perf tools: Fix static build with newer toolchains
      perf c2c: Fix remote HITM detection for Skylake
      perf record: Set read_format for inherit_stat
      perf report: Add dump_read function
      perf values: Fix thread index bug
      perf values: Fix allocation check
      perf values: Zero value buffers
      perf report: Group stat values on global event id

Kan Liang (3):
      perf intel-pt: Set no_aux_samples for the tracking event
      perf intel-pt: Always set no branch for dummy event
      perf/core, x86: Add PERF_SAMPLE_PHYS_ADDR

Kim Phillips (1):
      perf test shell: Replace '|&' with '2>&1 |' to work with more shells

Konstantin Khlebnikov (4):
      perf tools: Really install manpages via 'make install-man'
      perf: Fix documentation for sysctls perf_event_paranoid and perf_event_mlock_kb
      perf tools: Fix static linking with libdw from elfutils
      perf tools: Fix static linking with libunwind

Krister Johansen (6):
      perf symbols: Find symbols in different mount namespace
      perf maps: Lookup maps in both intitial mountns and inner mountns.
      perf probe: Allow placing uprobes in alternate namespaces.
      perf buildid-cache: Support binary objects from other namespaces
      perf buildid-cache: Cache debuginfo
      perf top: Support lookup of symbols in other mount namespaces.

Li Bin (2):
      perf probe: Fix kprobe blacklist checking condition
      perf symbols: Fix plt entry calculation for ARM and AARCH64

Masami Hiramatsu (5):
      h8300: Mark _stext and _etext as char-arrays, not single char variables
      xtensa: Mark _stext and _end as char-arrays, not single char variables
      cris: Mark _stext and _end as char-arrays, not single char variables
      irq: Make the irqentry text section unconditional
      kprobes/x86: Do not jump-optimize kprobes on irq entry code

Milian Wolff (2):
      perf util: Take elf_name as const string in dso__demangle_sym
      perf srcline: Do not consider empty files as valid srclines

Naveen N. Rao (1):
      perf scripting python: Add ppc64le to audit uname list

Oleg Nesterov (1):
      perf/core: Don't report zero PIDs for exiting tasks

Peter Zijlstra (1):
      perf/x86: Fix caps/ for !Intel

Shriya (1):
      perf pmu-events: Support additional POWER8+ PVR in mapfile

Sudeep Holla (1):
      perf jvmti: Fix linker error when libelf config is disabled

Sukadev Bhattiprolu (4):
      perf vendor events: Add POWER9 PMU events
      perf vendor events: Add POWER9 PVRs to mapfile
      perf vendor events powerpc: remove suffix in mapfile
      perf vendor events powerpc: Update POWER9 events

Taeung Song (13):
      perf annotate: Introduce struct sym_hist_entry
      perf annotate: Rename 'sum' to 'nr_samples' in struct sym_hist
      perf hists: Pass perf_sample to __symbol__inc_addr_samples()
      perf annotate: Store the sample period in each histogram bucket
      perf annotate: Do not overwrite sample->period
      perf annotate stdio: Fix --show-total-period
      perf annotate stdio: Fix column header when using --show-total-period
      perf annotate TUI: Fix --show-total-period
      perf annotate TUI: Fix column header when toggling period/percent
      perf annotate stdio: Support --show-nr-samples option
      perf annotate: Document --show-total-period option
      perf annotate browser: Support --show-nr-samples option
      perf annotate browser: Circulate percent, total-period and nr-samples view

Thomas Richter (3):
      perf report: Fix kernel symbol adjustment for s390x
      perf record: Fix wrong size in perf_record_mmap for last kernel module
      perf report: Fix module symbol adjustment for s390x

Wang Nan (1):
      perf bpf: Fix endianness problem when loading parameters in prologue

Will Deacon (2):
      perf/aux: Make aux_{head,wakeup} ring_buffer members long
      perf/aux: Ensure aux_wakeup represents most recent wakeup index

leilei.lin (1):
      perf/core: Reduce context switch overhead


 Documentation/sysctl/kernel.txt                    |   13 +-
 arch/arm/include/asm/traps.h                       |    7 -
 arch/arm64/include/asm/traps.h                     |    7 -
 arch/cris/arch-v32/mach-a3/arbiter.c               |    4 +-
 arch/cris/arch-v32/mach-fs/arbiter.c               |    4 +-
 arch/cris/kernel/traps.c                           |    6 +-
 arch/h8300/include/asm/traps.h                     |    6 +-
 arch/powerpc/perf/core-book3s.c                    |    3 +-
 arch/x86/entry/entry_64.S                          |    9 +-
 arch/x86/events/amd/uncore.c                       |   21 +-
 arch/x86/events/core.c                             |   57 +-
 arch/x86/events/intel/bts.c                        |    2 +-
 arch/x86/events/intel/core.c                       |  107 +-
 arch/x86/events/intel/ds.c                         |   58 +-
 arch/x86/events/intel/lbr.c                        |   52 +-
 arch/x86/events/intel/pt.c                         |    5 +-
 arch/x86/events/perf_event.h                       |   10 +-
 arch/x86/include/asm/cpufeatures.h                 |    2 +-
 arch/x86/kernel/kprobes/opt.c                      |    9 +-
 arch/x86/kernel/unwind_frame.c                     |    2 -
 arch/xtensa/kernel/setup.c                         |    6 +-
 include/asm-generic/sections.h                     |    4 +
 include/asm-generic/vmlinux.lds.h                  |    8 -
 include/linux/interrupt.h                          |   14 +-
 include/linux/perf_event.h                         |    7 +-
 include/uapi/linux/perf_event.h                    |   61 +-
 kernel/events/core.c                               |   85 +-
 kernel/events/internal.h                           |    6 +-
 kernel/events/ring_buffer.c                        |   31 +-
 tools/arch/arm/include/uapi/asm/kvm.h              |    8 +
 tools/arch/arm64/include/uapi/asm/kvm.h            |    3 +
 tools/arch/powerpc/include/uapi/asm/kvm.h          |    6 +
 tools/arch/s390/include/uapi/asm/kvm.h             |   12 +
 tools/arch/x86/include/asm/cpufeatures.h           |    3 +-
 tools/arch/x86/include/asm/unistd_32.h             |    3 +
 tools/arch/x86/include/asm/unistd_64.h             |    3 +
 tools/arch/x86/include/uapi/asm/unistd.h           |   17 +
 tools/build/Makefile.feature                       |    3 +-
 tools/build/feature/Makefile                       |    6 +-
 tools/build/feature/test-all.c                     |    5 +
 tools/build/feature/test-setns.c                   |    7 +
 tools/build/tests/ex/Makefile                      |    2 +-
 tools/include/linux/string.h                       |   12 +-
 tools/include/uapi/asm-generic/fcntl.h             |  220 ++
 tools/include/uapi/asm-generic/ioctls.h            |  118 +
 tools/include/uapi/drm/drm.h                       |  933 ++++++++
 tools/include/uapi/drm/i915_drm.h                  | 1474 ++++++++++++
 tools/include/uapi/linux/bpf.h                     |   16 +-
 tools/include/uapi/linux/fcntl.h                   |   21 +
 tools/include/uapi/linux/kvm.h                     | 1419 +++++++++++
 tools/include/uapi/linux/perf_event.h              |   57 +-
 tools/include/uapi/linux/sched.h                   |   52 +
 tools/include/uapi/linux/vhost.h                   |  209 ++
 tools/include/uapi/sound/asound.h                  | 1026 ++++++++
 tools/lib/api/Makefile                             |    8 +-
 tools/lib/bpf/Makefile                             |    8 +-
 tools/lib/string.c                                 |   41 +-
 tools/lib/subcmd/Makefile                          |    2 +-
 tools/lib/subcmd/help.c                            |    2 +-
 tools/lib/subcmd/parse-options.c                   |   18 +-
 tools/perf/Build                                   |    2 +-
 tools/perf/Documentation/Makefile                  |    2 +-
 tools/perf/Documentation/intel-pt.txt              |    6 +-
 tools/perf/Documentation/perf-annotate.txt         |    6 +
 tools/perf/Documentation/perf-buildid-cache.txt    |    5 +
 tools/perf/Documentation/perf-probe.txt            |   14 +
 tools/perf/Documentation/perf-record.txt           |    1 +
 tools/perf/Documentation/perf-stat.txt             |    4 +-
 tools/perf/Documentation/perf-top.txt              |    4 +
 tools/perf/Documentation/perf.data-file-format.txt |   10 +-
 tools/perf/MANIFEST                                |    8 +
 tools/perf/Makefile.config                         |   25 +-
 tools/perf/Makefile.perf                           |  101 +-
 tools/perf/arch/powerpc/util/sym-handling.c        |    2 +-
 tools/perf/arch/s390/util/Build                    |    1 +
 tools/perf/arch/s390/util/sym-handling.c           |   29 +
 tools/perf/arch/x86/Makefile                       |    2 +-
 tools/perf/arch/x86/annotate/instructions.c        |   46 +
 tools/perf/arch/x86/include/arch-tests.h           |   11 +-
 tools/perf/arch/x86/tests/insn-x86.c               |    2 +-
 tools/perf/arch/x86/tests/intel-cqm.c              |    2 +-
 tools/perf/arch/x86/tests/perf-time-to-tsc.c       |    2 +-
 tools/perf/arch/x86/tests/rdpmc.c                  |    2 +-
 tools/perf/arch/x86/util/intel-pt.c                |    3 +
 tools/perf/builtin-annotate.c                      |   23 +-
 tools/perf/builtin-buildid-cache.c                 |   54 +-
 tools/perf/builtin-config.c                        |    3 +-
 tools/perf/builtin-data.c                          |    2 +-
 tools/perf/builtin-ftrace.c                        |    2 +-
 tools/perf/builtin-help.c                          |    6 +-
 tools/perf/builtin-inject.c                        |    1 +
 tools/perf/builtin-probe.c                         |   45 +-
 tools/perf/builtin-record.c                        |    9 +-
 tools/perf/builtin-report.c                        |   63 +-
 tools/perf/builtin-script.c                        |   11 +-
 tools/perf/builtin-stat.c                          |   30 +-
 tools/perf/builtin-top.c                           |   22 +-
 tools/perf/builtin-trace.c                         |  744 +++---
 tools/perf/check-headers.sh                        |   20 +-
 tools/perf/perf-sys.h                              |   28 +-
 tools/perf/perf.c                                  |   16 +-
 tools/perf/perf.h                                  |    1 +
 tools/perf/pmu-events/README                       |    4 -
 tools/perf/pmu-events/arch/powerpc/mapfile.csv     |   16 +-
 .../perf/pmu-events/arch/powerpc/power9/cache.json |  137 ++
 .../arch/powerpc/power9/floating-point.json        |   32 +
 .../pmu-events/arch/powerpc/power9/frontend.json   |  377 +++
 .../pmu-events/arch/powerpc/power9/marked.json     |  647 +++++
 .../pmu-events/arch/powerpc/power9/memory.json     |  132 +
 .../perf/pmu-events/arch/powerpc/power9/other.json | 2512 ++++++++++++++++++++
 .../pmu-events/arch/powerpc/power9/pipeline.json   |  557 +++++
 tools/perf/pmu-events/arch/powerpc/power9/pmc.json |  127 +
 .../arch/powerpc/power9/translation.json           |  232 ++
 tools/perf/pmu-events/arch/x86/mapfile.csv         |    1 +
 tools/perf/pmu-events/arch/x86/skylakex/cache.json | 1672 +++++++++++++
 .../arch/x86/skylakex/floating-point.json          |   88 +
 .../pmu-events/arch/x86/skylakex/frontend.json     |  482 ++++
 .../perf/pmu-events/arch/x86/skylakex/memory.json  | 1396 +++++++++++
 tools/perf/pmu-events/arch/x86/skylakex/other.json |   72 +
 .../pmu-events/arch/x86/skylakex/pipeline.json     |  950 ++++++++
 .../arch/x86/skylakex/uncore-memory.json           |  172 ++
 .../pmu-events/arch/x86/skylakex/uncore-other.json | 1156 +++++++++
 .../arch/x86/skylakex/virtual-memory.json          |  284 +++
 tools/perf/pmu-events/jevents.c                    |   23 +-
 .../python/Perf-Trace-Util/lib/Perf/Trace/Util.py  |    1 +
 .../scripts/python/bin/export-to-sqlite-record     |    8 +
 .../scripts/python/bin/export-to-sqlite-report     |   29 +
 ...h-from-postgresql.py => call-graph-from-sql.py} |   70 +-
 tools/perf/scripts/python/export-to-postgresql.py  |    5 +-
 tools/perf/scripts/python/export-to-sqlite.py      |  451 ++++
 tools/perf/tests/Build                             |    1 +
 tools/perf/tests/attr.c                            |   14 +-
 tools/perf/tests/attr.py                           |   50 +-
 tools/perf/tests/attr/base-record                  |    6 +-
 tools/perf/tests/attr/base-stat                    |    4 +-
 tools/perf/tests/attr/test-record-C0               |    1 +
 tools/perf/tests/attr/test-record-basic            |    1 +
 tools/perf/tests/attr/test-record-branch-any       |    2 +-
 .../perf/tests/attr/test-record-branch-filter-any  |    2 +-
 .../tests/attr/test-record-branch-filter-any_call  |    2 +-
 .../tests/attr/test-record-branch-filter-any_ret   |    2 +-
 tools/perf/tests/attr/test-record-branch-filter-hv |    2 +-
 .../tests/attr/test-record-branch-filter-ind_call  |    2 +-
 tools/perf/tests/attr/test-record-branch-filter-k  |    2 +-
 tools/perf/tests/attr/test-record-branch-filter-u  |    2 +-
 tools/perf/tests/attr/test-record-count            |    1 +
 tools/perf/tests/attr/test-record-data             |    3 +-
 tools/perf/tests/attr/test-record-freq             |    1 +
 tools/perf/tests/attr/test-record-graph-default    |    1 +
 tools/perf/tests/attr/test-record-graph-dwarf      |    4 +-
 tools/perf/tests/attr/test-record-graph-fp         |    1 +
 tools/perf/tests/attr/test-record-group            |    1 +
 tools/perf/tests/attr/test-record-group-sampling   |    1 +
 tools/perf/tests/attr/test-record-group1           |    1 +
 ...st-record-no-delay => test-record-no-buffering} |    4 +-
 tools/perf/tests/attr/test-record-no-inherit       |    1 +
 tools/perf/tests/attr/test-record-no-samples       |    1 +
 tools/perf/tests/attr/test-record-period           |    1 +
 tools/perf/tests/attr/test-record-raw              |    2 +-
 tools/perf/tests/attr/test-stat-C0                 |    4 +-
 tools/perf/tests/attr/test-stat-default            |    2 +
 tools/perf/tests/attr/test-stat-detailed-1         |    2 +
 tools/perf/tests/attr/test-stat-detailed-2         |    3 +
 tools/perf/tests/attr/test-stat-detailed-3         |    5 +
 tools/perf/tests/backward-ring-buffer.c            |    2 +-
 tools/perf/tests/bitmap.c                          |    2 +-
 tools/perf/tests/bp_signal.c                       |    2 +-
 tools/perf/tests/bp_signal_overflow.c              |    2 +-
 tools/perf/tests/bpf-script-test-prologue.c        |    4 +-
 tools/perf/tests/bpf.c                             |   20 +-
 tools/perf/tests/builtin-test.c                    |  188 +-
 tools/perf/tests/clang.c                           |    4 +-
 tools/perf/tests/code-reading.c                    |    2 +-
 tools/perf/tests/cpumap.c                          |    4 +-
 tools/perf/tests/dso-data.c                        |    6 +-
 tools/perf/tests/dwarf-unwind.c                    |    2 +-
 tools/perf/tests/event-times.c                     |    2 +-
 tools/perf/tests/event_update.c                    |    2 +-
 tools/perf/tests/evsel-roundtrip-name.c            |    2 +-
 tools/perf/tests/evsel-tp-sched.c                  |    2 +-
 tools/perf/tests/expr.c                            |    7 +-
 tools/perf/tests/fdarray.c                         |    4 +-
 tools/perf/tests/hists_cumulate.c                  |    2 +-
 tools/perf/tests/hists_filter.c                    |    2 +-
 tools/perf/tests/hists_link.c                      |    2 +-
 tools/perf/tests/hists_output.c                    |    2 +-
 tools/perf/tests/is_printable_array.c              |    2 +-
 tools/perf/tests/keep-tracking.c                   |    2 +-
 tools/perf/tests/kmod-path.c                       |    2 +-
 tools/perf/tests/llvm.c                            |    2 +-
 tools/perf/tests/mem.c                             |   56 +
 tools/perf/tests/mmap-basic.c                      |    2 +-
 tools/perf/tests/mmap-thread-lookup.c              |    2 +-
 tools/perf/tests/openat-syscall-all-cpus.c         |    4 +-
 tools/perf/tests/openat-syscall-tp-fields.c        |    2 +-
 tools/perf/tests/openat-syscall.c                  |    4 +-
 tools/perf/tests/parse-events.c                    |    2 +-
 tools/perf/tests/parse-no-sample-id-all.c          |    2 +-
 tools/perf/tests/perf-hooks.c                      |    2 +-
 tools/perf/tests/perf-record.c                     |    2 +-
 tools/perf/tests/pmu.c                             |    2 +-
 tools/perf/tests/python-use.c                      |    2 +-
 tools/perf/tests/sample-parsing.c                  |    2 +-
 tools/perf/tests/sdt.c                             |   12 +-
 tools/perf/tests/shell/lib/probe.sh                |    6 +
 tools/perf/tests/shell/lib/probe_vfs_getname.sh    |   23 +
 tools/perf/tests/shell/probe_vfs_getname.sh        |   14 +
 .../tests/shell/record+script_probe_vfs_getname.sh |   41 +
 .../perf/tests/shell/trace+probe_libc_inet_pton.sh |   43 +
 tools/perf/tests/shell/trace+probe_vfs_getname.sh  |   35 +
 tools/perf/tests/stat.c                            |    6 +-
 tools/perf/tests/sw-clock.c                        |    2 +-
 tools/perf/tests/switch-tracking.c                 |    2 +-
 tools/perf/tests/task-exit.c                       |    2 +-
 tools/perf/tests/tests.h                           |  114 +-
 tools/perf/tests/thread-map.c                      |    6 +-
 tools/perf/tests/thread-mg-share.c                 |    2 +-
 tools/perf/tests/topology.c                        |    2 +-
 tools/perf/tests/unit_number__scnprintf.c          |    2 +-
 tools/perf/tests/vmlinux-kallsyms.c                |    2 +-
 tools/perf/trace/beauty/Build                      |    6 +
 tools/perf/trace/beauty/beauty.h                   |   74 +
 tools/perf/trace/beauty/clone.c                    |   75 +
 tools/perf/trace/beauty/drm_ioctl.sh               |   13 +
 tools/perf/trace/beauty/fcntl.c                    |  100 +
 tools/perf/trace/beauty/ioctl.c                    |  162 ++
 tools/perf/trace/beauty/kvm_ioctl.sh               |   11 +
 tools/perf/trace/beauty/mmap.c                     |    3 +
 tools/perf/trace/beauty/open_flags.c               |   29 +-
 tools/perf/trace/beauty/perf_ioctl.sh              |   10 +
 tools/perf/trace/beauty/pid.c                      |    4 +-
 tools/perf/trace/beauty/pkey_alloc.c               |   50 +
 .../perf/trace/beauty/pkey_alloc_access_rights.sh  |   10 +
 tools/perf/trace/beauty/sndrv_ctl_ioctl.sh         |    8 +
 tools/perf/trace/beauty/sndrv_pcm_ioctl.sh         |    8 +
 tools/perf/trace/beauty/vhost_virtio_ioctl.sh      |   17 +
 tools/perf/ui/browser.c                            |   32 +-
 tools/perf/ui/browser.h                            |    2 +
 tools/perf/ui/browsers/annotate.c                  |   94 +-
 tools/perf/ui/browsers/hists.c                     |    3 -
 tools/perf/ui/gtk/annotate.c                       |    6 +-
 tools/perf/ui/stdio/hist.c                         |    6 +-
 tools/perf/util/Build                              |    6 +
 tools/perf/util/annotate.c                         |  137 +-
 tools/perf/util/annotate.h                         |   22 +-
 tools/perf/util/bpf-loader.c                       |    2 +-
 tools/perf/util/bpf-prologue.c                     |   49 +-
 tools/perf/util/branch.c                           |  147 ++
 tools/perf/util/branch.h                           |   25 +
 tools/perf/util/build-id.c                         |  129 +-
 tools/perf/util/build-id.h                         |   16 +-
 tools/perf/util/callchain.c                        |  249 +-
 tools/perf/util/callchain.h                        |    5 +-
 tools/perf/util/cgroup.c                           |    8 +-
 tools/perf/util/config.c                           |   13 +-
 tools/perf/util/counts.h                           |    1 +
 tools/perf/util/data-convert-bt.c                  |  127 +-
 tools/perf/util/dso.c                              |   21 +-
 tools/perf/util/dso.h                              |    3 +
 tools/perf/util/event.c                            |    1 +
 tools/perf/util/event.h                            |   11 +-
 tools/perf/util/evlist.c                           |   16 +-
 tools/perf/util/evlist.h                           |   14 +-
 tools/perf/util/evsel.c                            |  213 +-
 tools/perf/util/evsel.h                            |   12 +-
 tools/perf/util/expr.h                             |    2 +-
 tools/perf/util/expr.y                             |   76 +-
 tools/perf/util/header.c                           | 1018 ++++----
 tools/perf/util/header.h                           |   16 +-
 tools/perf/util/hist.c                             |    7 +-
 tools/perf/util/intel-pt-decoder/Build             |    2 +-
 tools/perf/util/llvm-utils.c                       |    2 +-
 tools/perf/util/machine.c                          |   50 +-
 tools/perf/util/map.c                              |   23 +-
 tools/perf/util/map.h                              |    2 +-
 tools/perf/util/mem-events.c                       |   54 +-
 tools/perf/util/namespaces.c                       |  211 ++
 tools/perf/util/namespaces.h                       |   38 +
 tools/perf/util/parse-branch-options.c             |    1 +
 tools/perf/util/parse-events.c                     |   98 +-
 tools/perf/util/parse-events.h                     |   19 +-
 tools/perf/util/parse-events.l                     |   23 +-
 tools/perf/util/parse-events.y                     |   94 +-
 tools/perf/util/probe-event.c                      |   88 +-
 tools/perf/util/probe-event.h                      |   10 +-
 tools/perf/util/probe-file.c                       |   19 +-
 tools/perf/util/probe-file.h                       |    4 +-
 tools/perf/util/python-ext-sources                 |    1 +
 .../util/scripting-engines/trace-event-python.c    |  246 +-
 tools/perf/util/session.c                          |   29 +
 tools/perf/util/setns.c                            |    8 +
 tools/perf/util/smt.c                              |   44 +
 tools/perf/util/smt.h                              |    6 +
 tools/perf/util/sort.c                             |    2 +-
 tools/perf/util/srcline.c                          |    6 +
 tools/perf/util/stat-shadow.c                      |    6 +-
 tools/perf/util/stat.c                             |    4 +
 tools/perf/util/stat.h                             |    5 +-
 tools/perf/util/symbol-elf.c                       |   39 +-
 tools/perf/util/symbol-minimal.c                   |    2 +-
 tools/perf/util/symbol.c                           |  113 +-
 tools/perf/util/symbol.h                           |    7 +-
 tools/perf/util/thread.c                           |    3 +
 tools/perf/util/thread.h                           |    1 +
 tools/perf/util/tool.h                             |   10 +-
 tools/perf/util/util.c                             |   40 +-
 tools/perf/util/util.h                             |    8 +-
 tools/perf/util/values.c                           |   17 +-
 tools/perf/util/xyarray.c                          |    2 +
 tools/perf/util/xyarray.h                          |   12 +
 tools/scripts/Makefile.include                     |    4 +-
 311 files changed, 22585 insertions(+), 1963 deletions(-)
 create mode 100644 tools/arch/x86/include/uapi/asm/unistd.h
 create mode 100644 tools/build/feature/test-setns.c
 create mode 100644 tools/include/uapi/asm-generic/fcntl.h
 create mode 100644 tools/include/uapi/asm-generic/ioctls.h
 create mode 100644 tools/include/uapi/drm/drm.h
 create mode 100644 tools/include/uapi/drm/i915_drm.h
 create mode 100644 tools/include/uapi/linux/kvm.h
 create mode 100644 tools/include/uapi/linux/sched.h
 create mode 100644 tools/include/uapi/linux/vhost.h
 create mode 100644 tools/include/uapi/sound/asound.h
 create mode 100644 tools/perf/arch/s390/util/sym-handling.c
 create mode 100644 tools/perf/pmu-events/arch/powerpc/power9/cache.json
 create mode 100644 tools/perf/pmu-events/arch/powerpc/power9/floating-point.json
 create mode 100644 tools/perf/pmu-events/arch/powerpc/power9/frontend.json
 create mode 100644 tools/perf/pmu-events/arch/powerpc/power9/marked.json
 create mode 100644 tools/perf/pmu-events/arch/powerpc/power9/memory.json
 create mode 100644 tools/perf/pmu-events/arch/powerpc/power9/other.json
 create mode 100644 tools/perf/pmu-events/arch/powerpc/power9/pipeline.json
 create mode 100644 tools/perf/pmu-events/arch/powerpc/power9/pmc.json
 create mode 100644 tools/perf/pmu-events/arch/powerpc/power9/translation.json
 create mode 100644 tools/perf/pmu-events/arch/x86/skylakex/cache.json
 create mode 100644 tools/perf/pmu-events/arch/x86/skylakex/floating-point.json
 create mode 100644 tools/perf/pmu-events/arch/x86/skylakex/frontend.json
 create mode 100644 tools/perf/pmu-events/arch/x86/skylakex/memory.json
 create mode 100644 tools/perf/pmu-events/arch/x86/skylakex/other.json
 create mode 100644 tools/perf/pmu-events/arch/x86/skylakex/pipeline.json
 create mode 100644 tools/perf/pmu-events/arch/x86/skylakex/uncore-memory.json
 create mode 100644 tools/perf/pmu-events/arch/x86/skylakex/uncore-other.json
 create mode 100644 tools/perf/pmu-events/arch/x86/skylakex/virtual-memory.json
 create mode 100644 tools/perf/scripts/python/bin/export-to-sqlite-record
 create mode 100644 tools/perf/scripts/python/bin/export-to-sqlite-report
 rename tools/perf/scripts/python/{call-graph-from-postgresql.py => call-graph-from-sql.py} (87%)
 create mode 100644 tools/perf/scripts/python/export-to-sqlite.py
 rename tools/perf/tests/attr/{test-record-no-delay => test-record-no-buffering} (61%)
 create mode 100644 tools/perf/tests/mem.c
 create mode 100644 tools/perf/tests/shell/lib/probe.sh
 create mode 100644 tools/perf/tests/shell/lib/probe_vfs_getname.sh
 create mode 100755 tools/perf/tests/shell/probe_vfs_getname.sh
 create mode 100755 tools/perf/tests/shell/record+script_probe_vfs_getname.sh
 create mode 100755 tools/perf/tests/shell/trace+probe_libc_inet_pton.sh
 create mode 100755 tools/perf/tests/shell/trace+probe_vfs_getname.sh
 create mode 100644 tools/perf/trace/beauty/clone.c
 create mode 100755 tools/perf/trace/beauty/drm_ioctl.sh
 create mode 100644 tools/perf/trace/beauty/fcntl.c
 create mode 100644 tools/perf/trace/beauty/ioctl.c
 create mode 100755 tools/perf/trace/beauty/kvm_ioctl.sh
 create mode 100755 tools/perf/trace/beauty/perf_ioctl.sh
 create mode 100644 tools/perf/trace/beauty/pkey_alloc.c
 create mode 100755 tools/perf/trace/beauty/pkey_alloc_access_rights.sh
 create mode 100755 tools/perf/trace/beauty/sndrv_ctl_ioctl.sh
 create mode 100755 tools/perf/trace/beauty/sndrv_pcm_ioctl.sh
 create mode 100755 tools/perf/trace/beauty/vhost_virtio_ioctl.sh
 create mode 100644 tools/perf/util/branch.c
 create mode 100644 tools/perf/util/branch.h
 create mode 100644 tools/perf/util/setns.c
 create mode 100644 tools/perf/util/smt.c
 create mode 100644 tools/perf/util/smt.h

[ ... interdiff skipped due to size ... ]

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ