LKML Archive on lore.kernel.org
 help / color / Atom feed
* [GIT PULL 0/7] perf/urgent callchain fixes
@ 2017-05-24  6:21 Namhyung Kim
  2017-05-24  6:21 ` [PATCH 1/7] perf report: don't crash on invalid maps in `-g srcline` mode Namhyung Kim
                   ` (8 more replies)
  0 siblings, 9 replies; 26+ messages in thread
From: Namhyung Kim @ 2017-05-24  6:21 UTC (permalink / raw)
  To: Ingo Molnar
  Cc: LKML, kernel-team, Arnaldo Carvalho de Melo, Jiri Olsa,
	Milian Wolff, Yao Jin

Hi Ingo,

Please consider pulling the perf tooling changes below.  Build tested
on Ubuntu, Fedora and Archlinux.  I found a problem during `perf test`
but it seems unrelated to this series.  Will take a look it later.

Thanks,
Namhyung


The following changes since commit 88b0193d9418c00340e45e0a913a0813bc6c8c96:

  perf/callchain: Force USER_DS when invoking perf_callchain_user() (2017-05-10 07:54:00 +0200)

are available in the git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/namhyung/linux-perf tags/perf-urgent-for-mingo-4.12-20170524

for you to fetch changes up to 37d4e1b6ba56773cef96122dff4436c2c534c381:

  perf tools: Fix to put caller above callee in children mode (2017-05-24 08:51:11 +0900)

----------------------------------------------------------------
perf/urgent fixes

Fixes:

 - Fix segfault on `perf report -g srcline` if a callchain address
   cannot find a map for some reason.  The srcline sorting mode needs
   a DSO to resolve line numbers and it's accessed via a map.  But it
   should check if map is available for the address first.  (Milian Wolff)

 - Fix off-by-one for srcline output.  It passed (unwound) address to
   resolve srcline for callchains.  But it's a return address of the
   function which points to a next instruction.  This leads to
   off-by-one for srcline info.  So pass the "address - 1" instead to
   get the correct srcline.  This also considers "signal frame" as
   well which has the exact address, so pass the address directly in
   this case.  (Milian Wolff)

 - Fix missing inlined function.  Current code missed to display
   inlined functions at the end.  This was found when comparing the
   output of addr2line and perf script.  (Milian Wolff)
   
 
User Visible:

 - `perf script` also gained `--inline` option to show inlined
   functions with callchains.  This helped to find a bug in the
   current inline code.  (Namhyung Kim)

 - Fix missed callchain ordering with `-g callee/caller` when libbfd
   is not available.  (Milian Wolff)
 
 - Reorder output entries in `perf report --children` so that it can
   put parent entries above their children.  It worked like this but
   missed when callchain display order was changed with `-g caller`.
   Now default is `-g caller` if children mode enabled.  (Namhyung Kim)


----------------------------------------------------------------

Milian Wolff (5):
      perf report: don't crash on invalid maps in `-g srcline` mode
      perf report: fix memory leak in addr2line when called by addr2inlines
      perf report: fix off-by-one for non-activation frames
      perf report: always honor callchain order for inlined nodes
      perf report: do not drop last inlined frame

Namhyung Kim (2):
      perf script: Add --inline option
      perf tools: Fix to put caller above callee in children mode

 tools/perf/Documentation/perf-script.txt |  4 +++
 tools/perf/builtin-script.c              |  2 ++
 tools/perf/ui/hist.c                     |  2 ++
 tools/perf/util/callchain.c              | 13 ++++++---
 tools/perf/util/evsel_fprintf.c          | 33 +++++++++++++++++++++
 tools/perf/util/srcline.c                | 49 +++++++++++++++++---------------
 tools/perf/util/unwind-libdw.c           |  6 +++-
 tools/perf/util/unwind-libunwind-local.c | 11 +++++++
 8 files changed, 92 insertions(+), 28 deletions(-)

^ permalink raw reply	[flat|nested] 26+ messages in thread

end of thread, back to index

Thread overview: 26+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-05-24  6:21 [GIT PULL 0/7] perf/urgent callchain fixes Namhyung Kim
2017-05-24  6:21 ` [PATCH 1/7] perf report: don't crash on invalid maps in `-g srcline` mode Namhyung Kim
2017-05-24  7:03   ` [tip:perf/urgent] perf report: Don't " tip-bot for Milian Wolff
2017-05-24  6:21 ` [PATCH 2/7] perf report: fix memory leak in addr2line when called by addr2inlines Namhyung Kim
2017-05-24  7:04   ` [tip:perf/urgent] perf report: Fix " tip-bot for Milian Wolff
2017-05-24  6:21 ` [PATCH 3/7] perf report: fix off-by-one for non-activation frames Namhyung Kim
2017-05-24  7:05   ` [tip:perf/urgent] perf report: Fix " tip-bot for Milian Wolff
2017-05-24  6:21 ` [PATCH 4/7] perf script: Add --inline option Namhyung Kim
2017-05-24  6:38   ` Ingo Molnar
2017-05-24  7:13     ` Namhyung Kim
2017-05-24  7:21       ` Ingo Molnar
2017-05-24  7:53         ` Milian Wolff
2017-05-24  8:06           ` Ingo Molnar
2017-05-24  7:05   ` [tip:perf/urgent] perf script: Add --inline option for debugging tip-bot for Namhyung Kim
2017-05-24  6:21 ` [PATCH 5/7] perf report: always honor callchain order for inlined nodes Namhyung Kim
2017-05-24  7:06   ` [tip:perf/urgent] perf report: Always " tip-bot for Milian Wolff
2017-05-24  6:21 ` [PATCH 6/7] perf report: do not drop last inlined frame Namhyung Kim
2017-05-24  7:06   ` [tip:perf/urgent] perf report: Do " tip-bot for Milian Wolff
2017-05-24  6:21 ` [PATCH 7/7] perf tools: Fix to put caller above callee in children mode Namhyung Kim
2017-05-24  7:07   ` [tip:perf/urgent] perf tools: Put caller above callee in --children mode tip-bot for Namhyung Kim
2017-05-24  6:53 ` [GIT PULL 0/7] perf/urgent callchain fixes Ingo Molnar
2017-05-24  6:57   ` [PATCH] tools/include: Sync kernel ABI headers with tooling headers Ingo Molnar
2017-05-24  7:07     ` [tip:perf/urgent] " tip-bot for Ingo Molnar
2017-06-08 13:15 ` [GIT PULL 0/7] perf/urgent callchain fixes Milian Wolff
2017-06-08 13:59   ` Arnaldo Carvalho de Melo
2017-06-08 14:34     ` Milian Wolff

LKML Archive on lore.kernel.org

Archives are clonable:
	git clone --mirror https://lore.kernel.org/lkml/0 lkml/git/0.git
	git clone --mirror https://lore.kernel.org/lkml/1 lkml/git/1.git
	git clone --mirror https://lore.kernel.org/lkml/2 lkml/git/2.git
	git clone --mirror https://lore.kernel.org/lkml/3 lkml/git/3.git
	git clone --mirror https://lore.kernel.org/lkml/4 lkml/git/4.git
	git clone --mirror https://lore.kernel.org/lkml/5 lkml/git/5.git
	git clone --mirror https://lore.kernel.org/lkml/6 lkml/git/6.git
	git clone --mirror https://lore.kernel.org/lkml/7 lkml/git/7.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 lkml lkml/ https://lore.kernel.org/lkml \
		linux-kernel@vger.kernel.org linux-kernel@archiver.kernel.org
	public-inbox-index lkml

Example config snippet for mirrors

Newsgroup available over NNTP:
	nntp://nntp.lore.kernel.org/org.kernel.vger.linux-kernel


AGPL code for this site: git clone https://public-inbox.org/ public-inbox