All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ingo Molnar <mingo@kernel.org>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: linux-kernel@vger.kernel.org,
	Peter Zijlstra <a.p.zijlstra@chello.nl>,
	Arnaldo Carvalho de Melo <acme@infradead.org>,
	Thomas Gleixner <tglx@linutronix.de>,
	Andrew Morton <akpm@linux-foundation.org>
Subject: [GIT PULL] perf changes for v5.6
Date: Tue, 28 Jan 2020 09:24:24 +0100	[thread overview]
Message-ID: <20200128082424.GA41606@gmail.com> (raw)

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: 0cc4bd8f70d1ea2940295f1050508c663fe9eff9 Merge branch 'core/kprobes' into perf/core, to pick up fixes

Kernel side changes:

 - Ftrace is one of the last W^X violators (after this only KLP is left). 
   These patches move it over to the generic text_poke() interface and 
   thereby get rid of this oddity. This requires a surprising amount of 
   surgery, by Peter Zijlstra.

 - x86/AMD PMUs: add support for 'Large Increment per Cycle Events' to 
   count certain types of events that have a special, quirky hw ABI.
   (by Kim Phillips)

 - kprobes fixes by Masami Hiramatsu

Lots of tooling updates as well, the following subcommands were updated: 
annotate/report/top, c2c, clang, record, report/top TUI, sched timehist, 
tests; plus updates were done to the gtk ui, libperf, headers and the 
parser. Please see the shortlog and git log for details.

 Thanks,

	Ingo

------------------>
Alexey Budankov (3):
      tools bitmap: Implement bitmap_equal() operation at bitmap API
      perf mmap: Declare type for cpu mask of arbitrary length
      perf record: Adapt affinity to machines with #CPUs > 1K

Andi Kleen (2):
      perf report: Clarify in help that --children is default
      perf tools: Support --prefix/--prefix-strip

Andres Freund (1):
      perf c2c: Fix return type for histogram sorting comparision functions

Andrey Zhizhikin (1):
      tools lib api fs: Fix gcc9 stringop-truncation compilation error

Arnaldo Carvalho de Melo (12):
      perf tests bp_signal: Show expected versus obtained values
      perf hists browser: Restore ESC as "Zoom out" of DSO/thread/etc
      perf report/top: Make ENTER consistently bring up menu
      perf report/top: Add menu entry for toggling callchain expansion
      perf report/top: Improve toggle callchain menu option
      perf hists browser: Generalize the do_zoom_dso() function
      perf report/top: Add 'k' hotkey to zoom directly into the kernel map
      perf hists browser: Allow passing an initial hotkey
      tools ui popup: Allow returning hotkeys
      perf report/top: Allow pressing hotkeys in the options popup menu
      perf report/top: Do not offer annotation for symbols without samples
      perf report/top: Make 'e' visible in the help and make it toggle showing callchains

Borislav Petkov (1):
      x86/ftrace: Mark ftrace_modify_code_direct() __ref

Cengiz Can (1):
      perf beauty sockaddr: Fix augmented syscall format warning

David Ahern (1):
      perf sched timehist: Add support for filtering on CPU

Harry Pan (1):
      perf/x86/intel/rapl: Add Comet Lake support

Jin Yao (1):
      perf report: Fix no libunwind compiled warning break s390 issue

Jiri Olsa (6):
      libperf: Move to tools/lib/perf
      libperf: Add man pages
      libperf: Setup initial evlist::all_cpus value
      perf tools: Use %define api.pure full instead of %pure-parser
      perf ui gtk: Add missing zalloc object
      perf/ui/gtk: Fix gtk2 build

Kim Phillips (2):
      perf/x86/amd: Constrain Large Increment per Cycle events
      perf/x86/amd: Add support for Large Increment per Cycle Events

Maciej S. Szmigiero (2):
      perf clang: Fix build with Clang 9
      tools build: Fix test-clang.cpp with Clang 8+

Masami Hiramatsu (3):
      x86/alternatives: Sync bp_patching update for avoiding NULL pointer exception
      kprobes: Set unoptimized flag after unoptimizing code
      kprobes: Fix optimize_kprobe()/unoptimize_kprobe() cancellation logic

Michael Petlan (1):
      perf header: Use last modification time for timestamp

Peter Zijlstra (17):
      x86/alternatives: Update int3_emulate_push() comment
      x86/alternatives, jump_label: Provide better text_poke() batching interface
      x86/alternatives: Add and use text_gen_insn() helper
      x86/ftrace: Use text_poke()
      x86/mm: Remove set_kernel_text_r[ow]()
      x86/alternative: Add text_opcode_size()
      x86/ftrace: Use text_gen_insn()
      x86/alternative: Remove text_poke_loc::len
      x86/alternative: Shrink text_poke_loc
      x86/kprobes: Convert to text-patching.h
      x86/kprobes: Fix ordering while text-patching
      arm/ftrace: Use __patch_text()
      module: Remove set_all_modules_text_*()
      ftrace: Rework event_create_dir()
      x86/kprobe: Add comments to arch_{,un}optimize_kprobes()
      x86/alternatives: Use INT3_INSN_SIZE
      x86/alternatives: Implement a better poke_int3_handler() completion scheme

Steven Rostedt (VMware) (1):
      tracing: Initialize ret in syscall_enter_define_fields()

Vitaly Chikunov (1):
      tools lib: Fix builds when glibc contains strlcpy()


 arch/arm/kernel/Makefile                           |   4 +-
 arch/arm/kernel/ftrace.c                           |  10 +-
 arch/nds32/kernel/ftrace.c                         |  12 -
 arch/x86/events/amd/core.c                         | 109 +++-
 arch/x86/events/core.c                             |  74 ++-
 arch/x86/events/intel/rapl.c                       |   2 +
 arch/x86/events/perf_event.h                       |  20 +
 arch/x86/include/asm/ftrace.h                      |   2 -
 arch/x86/include/asm/kprobes.h                     |  14 +-
 arch/x86/include/asm/set_memory.h                  |   2 -
 arch/x86/include/asm/text-patching.h               |  86 ++-
 arch/x86/kernel/alternative.c                      | 198 ++++--
 arch/x86/kernel/ftrace.c                           | 688 ++++-----------------
 arch/x86/kernel/jump_label.c                       | 116 ++--
 arch/x86/kernel/kprobes/core.c                     |  20 +-
 arch/x86/kernel/kprobes/opt.c                      |  67 +-
 arch/x86/kernel/traps.c                            |   9 -
 arch/x86/mm/init_32.c                              |  28 -
 arch/x86/mm/init_64.c                              |  36 --
 drivers/infiniband/hw/hfi1/trace_tid.h             |   8 +-
 drivers/infiniband/hw/hfi1/trace_tx.h              |   2 +-
 drivers/lightnvm/pblk-trace.h                      |   8 +-
 drivers/net/fjes/fjes_trace.h                      |   2 +-
 drivers/net/wireless/ath/ath10k/trace.h            |   6 +-
 fs/xfs/scrub/trace.h                               |   6 +-
 fs/xfs/xfs_trace.h                                 |   4 +-
 include/linux/module.h                             |   4 -
 include/linux/trace_events.h                       |  18 +-
 include/trace/events/filemap.h                     |   2 +-
 include/trace/trace_events.h                       |  64 +-
 kernel/kprobes.c                                   |  71 ++-
 kernel/module.c                                    |  43 --
 kernel/trace/trace.h                               |  31 +-
 kernel/trace/trace_entries.h                       |  66 +-
 kernel/trace/trace_events.c                        |  20 +-
 kernel/trace/trace_events_hist.c                   |   8 +-
 kernel/trace/trace_export.c                        | 106 ++--
 kernel/trace/trace_kprobe.c                        |  16 +-
 kernel/trace/trace_syscalls.c                      |  51 +-
 kernel/trace/trace_uprobe.c                        |   9 +-
 net/mac80211/trace.h                               |  28 +-
 net/wireless/trace.h                               |   6 +-
 tools/build/feature/Makefile                       |   2 +-
 tools/build/feature/test-clang.cpp                 |   6 +
 tools/include/linux/bitmap.h                       |  30 +
 tools/include/linux/string.h                       |   8 +
 tools/lib/api/fs/fs.c                              |   4 +-
 tools/lib/bitmap.c                                 |  15 +
 tools/{perf/lib => lib/perf}/Build                 |   0
 tools/lib/perf/Documentation/Makefile              | 156 +++++
 tools/lib/perf/Documentation/asciidoc.conf         | 120 ++++
 tools/lib/perf/Documentation/examples/sampling.c   | 119 ++++
 tools/lib/perf/Documentation/libperf-counting.txt  | 211 +++++++
 tools/lib/perf/Documentation/libperf-sampling.txt  | 243 ++++++++
 tools/lib/perf/Documentation/libperf.txt           | 246 ++++++++
 tools/lib/perf/Documentation/manpage-1.72.xsl      |  14 +
 tools/lib/perf/Documentation/manpage-base.xsl      |  35 ++
 .../perf/Documentation/manpage-bold-literal.xsl    |  17 +
 tools/lib/perf/Documentation/manpage-normal.xsl    |  13 +
 .../lib/perf/Documentation/manpage-suppress-sp.xsl |  21 +
 tools/{perf/lib => lib/perf}/Makefile              |   7 +-
 tools/{perf/lib => lib/perf}/core.c                |   0
 tools/{perf/lib => lib/perf}/cpumap.c              |   0
 tools/{perf/lib => lib/perf}/evlist.c              |   3 +
 tools/{perf/lib => lib/perf}/evsel.c               |   0
 .../lib => lib/perf}/include/internal/cpumap.h     |   0
 .../lib => lib/perf}/include/internal/evlist.h     |   0
 .../lib => lib/perf}/include/internal/evsel.h      |   0
 .../{perf/lib => lib/perf}/include/internal/lib.h  |   0
 .../{perf/lib => lib/perf}/include/internal/mmap.h |   0
 .../lib => lib/perf}/include/internal/tests.h      |   0
 .../lib => lib/perf}/include/internal/threadmap.h  |   0
 .../lib => lib/perf}/include/internal/xyarray.h    |   0
 tools/{perf/lib => lib/perf}/include/perf/core.h   |   0
 tools/{perf/lib => lib/perf}/include/perf/cpumap.h |   0
 tools/{perf/lib => lib/perf}/include/perf/event.h  |   0
 tools/{perf/lib => lib/perf}/include/perf/evlist.h |   0
 tools/{perf/lib => lib/perf}/include/perf/evsel.h  |   0
 tools/{perf/lib => lib/perf}/include/perf/mmap.h   |   0
 .../lib => lib/perf}/include/perf/threadmap.h      |   0
 tools/{perf/lib => lib/perf}/internal.h            |   0
 tools/{perf/lib => lib/perf}/lib.c                 |   0
 tools/{perf/lib => lib/perf}/libperf.map           |   0
 tools/{perf/lib => lib/perf}/libperf.pc.template   |   0
 tools/{perf/lib => lib/perf}/mmap.c                |   0
 tools/{perf/lib => lib/perf}/tests/Makefile        |   2 +-
 tools/{perf/lib => lib/perf}/tests/test-cpumap.c   |   0
 tools/{perf/lib => lib/perf}/tests/test-evlist.c   |   0
 tools/{perf/lib => lib/perf}/tests/test-evsel.c    |   0
 .../{perf/lib => lib/perf}/tests/test-threadmap.c  |   0
 tools/{perf/lib => lib/perf}/threadmap.c           |   0
 tools/{perf/lib => lib/perf}/xyarray.c             |   0
 tools/lib/string.c                                 |   7 +
 tools/perf/Documentation/perf-annotate.txt         |   6 +
 tools/perf/Documentation/perf-report.txt           |   6 +
 tools/perf/Documentation/perf-sched.txt            |   4 +
 tools/perf/Documentation/perf-top.txt              |   6 +
 tools/perf/MANIFEST                                |   1 +
 tools/perf/Makefile.config                         |   2 +-
 tools/perf/Makefile.perf                           |   2 +-
 tools/perf/builtin-annotate.c                      |   7 +
 tools/perf/builtin-c2c.c                           |  14 +-
 tools/perf/builtin-record.c                        |  28 +-
 tools/perf/builtin-report.c                        |  16 +-
 tools/perf/builtin-sched.c                         |  13 +
 tools/perf/builtin-top.c                           |   7 +
 tools/perf/lib/Documentation/Makefile              |   7 -
 tools/perf/lib/Documentation/man/libperf.rst       | 100 ---
 tools/perf/lib/Documentation/tutorial/tutorial.rst | 123 ----
 tools/perf/tests/bp_signal.c                       |  10 +-
 tools/perf/trace/beauty/sockaddr.c                 |   2 +-
 tools/perf/ui/browsers/hists.c                     | 277 ++++++---
 tools/perf/ui/browsers/hists.h                     |   2 +-
 tools/perf/ui/browsers/res_sample.c                |   2 +-
 tools/perf/ui/browsers/scripts.c                   |   2 +-
 tools/perf/ui/gtk/Build                            |   7 +-
 tools/perf/ui/tui/util.c                           |  12 +-
 tools/perf/ui/util.h                               |   2 +-
 tools/perf/util/annotate.c                         |  19 +-
 tools/perf/util/annotate.h                         |   5 +
 tools/perf/util/c++/clang.cpp                      |   4 +
 tools/perf/util/expr.y                             |   3 +-
 tools/perf/util/header.c                           |   2 +-
 tools/perf/util/mmap.c                             |  40 +-
 tools/perf/util/mmap.h                             |  13 +-
 tools/perf/util/parse-events.y                     |   2 +-
 tools/perf/util/sort.c                             |   3 +-
 tools/perf/util/sort.h                             |   2 +
 128 files changed, 2515 insertions(+), 1591 deletions(-)
 rename tools/{perf/lib => lib/perf}/Build (100%)
 create mode 100644 tools/lib/perf/Documentation/Makefile
 create mode 100644 tools/lib/perf/Documentation/asciidoc.conf
 create mode 100644 tools/lib/perf/Documentation/examples/sampling.c
 create mode 100644 tools/lib/perf/Documentation/libperf-counting.txt
 create mode 100644 tools/lib/perf/Documentation/libperf-sampling.txt
 create mode 100644 tools/lib/perf/Documentation/libperf.txt
 create mode 100644 tools/lib/perf/Documentation/manpage-1.72.xsl
 create mode 100644 tools/lib/perf/Documentation/manpage-base.xsl
 create mode 100644 tools/lib/perf/Documentation/manpage-bold-literal.xsl
 create mode 100644 tools/lib/perf/Documentation/manpage-normal.xsl
 create mode 100644 tools/lib/perf/Documentation/manpage-suppress-sp.xsl
 rename tools/{perf/lib => lib/perf}/Makefile (96%)
 rename tools/{perf/lib => lib/perf}/core.c (100%)
 rename tools/{perf/lib => lib/perf}/cpumap.c (100%)
 rename tools/{perf/lib => lib/perf}/evlist.c (99%)
 rename tools/{perf/lib => lib/perf}/evsel.c (100%)
 rename tools/{perf/lib => lib/perf}/include/internal/cpumap.h (100%)
 rename tools/{perf/lib => lib/perf}/include/internal/evlist.h (100%)
 rename tools/{perf/lib => lib/perf}/include/internal/evsel.h (100%)
 rename tools/{perf/lib => lib/perf}/include/internal/lib.h (100%)
 rename tools/{perf/lib => lib/perf}/include/internal/mmap.h (100%)
 rename tools/{perf/lib => lib/perf}/include/internal/tests.h (100%)
 rename tools/{perf/lib => lib/perf}/include/internal/threadmap.h (100%)
 rename tools/{perf/lib => lib/perf}/include/internal/xyarray.h (100%)
 rename tools/{perf/lib => lib/perf}/include/perf/core.h (100%)
 rename tools/{perf/lib => lib/perf}/include/perf/cpumap.h (100%)
 rename tools/{perf/lib => lib/perf}/include/perf/event.h (100%)
 rename tools/{perf/lib => lib/perf}/include/perf/evlist.h (100%)
 rename tools/{perf/lib => lib/perf}/include/perf/evsel.h (100%)
 rename tools/{perf/lib => lib/perf}/include/perf/mmap.h (100%)
 rename tools/{perf/lib => lib/perf}/include/perf/threadmap.h (100%)
 rename tools/{perf/lib => lib/perf}/internal.h (100%)
 rename tools/{perf/lib => lib/perf}/lib.c (100%)
 rename tools/{perf/lib => lib/perf}/libperf.map (100%)
 rename tools/{perf/lib => lib/perf}/libperf.pc.template (100%)
 rename tools/{perf/lib => lib/perf}/mmap.c (100%)
 rename tools/{perf/lib => lib/perf}/tests/Makefile (93%)
 rename tools/{perf/lib => lib/perf}/tests/test-cpumap.c (100%)
 rename tools/{perf/lib => lib/perf}/tests/test-evlist.c (100%)
 rename tools/{perf/lib => lib/perf}/tests/test-evsel.c (100%)
 rename tools/{perf/lib => lib/perf}/tests/test-threadmap.c (100%)
 rename tools/{perf/lib => lib/perf}/threadmap.c (100%)
 rename tools/{perf/lib => lib/perf}/xyarray.c (100%)
 delete mode 100644 tools/perf/lib/Documentation/Makefile
 delete mode 100644 tools/perf/lib/Documentation/man/libperf.rst
 delete mode 100644 tools/perf/lib/Documentation/tutorial/tutorial.rst


             reply	other threads:[~2020-01-28  8:24 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-01-28  8:24 Ingo Molnar [this message]
2020-01-28 19:10 ` [GIT PULL] perf changes for v5.6 pr-tracker-bot

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200128082424.GA41606@gmail.com \
    --to=mingo@kernel.org \
    --cc=a.p.zijlstra@chello.nl \
    --cc=acme@infradead.org \
    --cc=akpm@linux-foundation.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=tglx@linutronix.de \
    --cc=torvalds@linux-foundation.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.