Messages in this thread | | | Date | Wed, 24 May 2017 08:53:23 +0200 | From | Ingo Molnar <> | Subject | Re: [GIT PULL 0/7] perf/urgent callchain fixes |
| |
* Namhyung Kim <namhyung@kernel.org> wrote:
> 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(-)
Thanks, I've applied the fixes from email with some minor tweaks to the changelogs.
I also noticed that we now have a lot of warnings about out of sync headers:
Warning: include/uapi/linux/stat.h differs from kernel Warning: arch/x86/include/asm/disabled-features.h differs from kernel Warning: arch/x86/include/asm/required-features.h differs from kernel Warning: arch/x86/include/asm/cpufeatures.h differs from kernel Warning: arch/x86/include/uapi/asm/kvm.h differs from kernel Warning: arch/x86/include/uapi/asm/vmx.h differs from kernel Warning: arch/powerpc/include/uapi/asm/kvm.h differs from kernel Warning: arch/s390/include/uapi/asm/kvm.h differs from kernel Warning: arch/arm/include/uapi/asm/kvm.h differs from kernel Warning: arch/arm64/include/uapi/asm/kvm.h differs from kernel
... will post a separate patch for that.
Thanks,
Ingo
| |