linux-perf-users.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Milian Wolff <milian.wolff@kdab.com>
To: linux-perf-users@vger.kernel.org
Cc: Namhyung Kim <namhyung@kernel.org>,
	Brendan Gregg <brendan.d.gregg@gmail.com>,
	Arnaldo Carvalho de Melo <acme@kernel.org>
Subject: regression: perf script IP address format
Date: Tue, 30 Aug 2016 17:42:47 +0200	[thread overview]
Message-ID: <3089144.akJYgxmlqy@milian-kdab2> (raw)

[-- Attachment #1: Type: text/plain, Size: 5598 bytes --]

Hey all,

I'm encountering an issue related to the one I reported a few days ago, where 
the `-g address` feature was broken due to the wrong address being used.

We fixed this by using al.addr instead of ip, but this now breaks the output 
of perf script:

Before 67540759151aefafddade3e27c4671ab7b3d230f was applied:

lab_mandelbrot 28224 13656.319122:     995647 cycles:ppp: 
                  403a8a _start+0x2a (/ssd/milian/projects/kdab/training-
material/addon/profiling/build/lab_mandelbrot/src/lab_mandelbrot)
            7f8a88e1c291 __libc_start_main+0xf1 (/usr/lib/libc-2.24.so)
                  40307a main+0x4a (/ssd/milian/projects/kdab/training-
material/addon/profiling/build/lab_mandelbrot/src/lab_mandelbrot)
            7f8a8ae39ae9 QApplicationPrivate::init+0x9 (/usr/lib/
libQt5Widgets.so.5.7.0)
            7f8a8a69e7af QGuiApplicationPrivate::init+0x2f (/usr/lib/
libQt5Gui.so.5.7.0)
            7f8a8a15b3bf QCoreApplicationPrivate::init+0xaaf (/usr/lib/
libQt5Core.so.5.7.0)
            7f8a8a69cced QGuiApplicationPrivate::createEventDispatcher+0x2d (/
usr/lib/libQt5Gui.so.5.7.0)
            7f8a8a69c252 QGuiApplicationPrivate::createPlatformIntegration
+0x5c2 (/usr/lib/libQt5Gui.so.5.7.0)
            7f8a8a68e01f QPlatformIntegrationFactory::create+0xef (/usr/lib/
libQt5Gui.so.5.7.0)
            7f8a8a13f9c2 QFactoryLoader::instance+0x112 (/usr/lib/
libQt5Core.so.5.7.0)
            7f8a8a14a6a5 [unknown] (/usr/lib/libQt5Core.so.5.7.0)
            7f8a8a15121e [unknown] (/usr/lib/libQt5Core.so.5.7.0)
            7f8a87aa5f82 dlopen+0x32 (/usr/lib/libdl-2.24.so)
            7f8a87aa6521 [unknown] (/usr/lib/libdl-2.24.so)
            7f8a8b5493a4 _dl_catch_error+0x74 (/usr/lib/ld-2.24.so)
            7f8a87aa5ee9 [unknown] (/usr/lib/libdl-2.24.so)
            7f8a8b54d2d9 _dl_open+0xc9 (/usr/lib/ld-2.24.so)
            7f8a8b5493a4 _dl_catch_error+0x74 (/usr/lib/ld-2.24.so)
            7f8a8b54d85d dl_open_worker+0x11d (/usr/lib/ld-2.24.so)
            7f8a8b547005 _dl_map_object_deps+0x275 (/usr/lib/ld-2.24.so)
            7f8a8b5493a4 _dl_catch_error+0x74 (/usr/lib/ld-2.24.so)
            7f8a8b546d80 openaux+0x30 (/usr/lib/ld-2.24.so)
            7f8a8b5423fd _dl_map_object+0x8d (/usr/lib/ld-2.24.so)
            7f8a8b54a5d4 _dl_name_match_p+0x44 (/usr/lib/ld-2.24.so)
            7f8a8b55364c strcmp+0xc (/usr/lib/ld-2.24.so)

After it got applied:

lab_mandelbrot 28224 13656.319122:     995647 cycles:ppp: 
                    3a8a _start+0xffffffffff80002a (/ssd/milian/projects/kdab/
training-material/addon/profiling/build/lab_mandelbrot/src/lab_mandelbrot)
                   20291 __libc_start_main+0xffff00eaee4080f1 (/usr/lib/
libc-2.24.so)
                    307a main+0xffffffffff80004a (/ssd/milian/projects/kdab/
training-material/addon/profiling/build/lab_mandelbrot/src/lab_mandelbrot)
                  158ae9 QApplicationPrivate::init+0xffff00eaea63e009 (/usr/
lib/libQt5Widgets.so.5.7.0)
                   f97af QGuiApplicationPrivate::init+0xffff00eaeb4b602f (/
usr/lib/libQt5Gui.so.5.7.0)
                  28d3bf QCoreApplicationPrivate::init+0xffff00eaec264aaf (/
usr/lib/libQt5Core.so.5.7.0)
                   f7ced QGuiApplicationPrivate::createEventDispatcher
+0xffff00eaeb4b602d (/usr/lib/libQt5Gui.so.5.7.0)
                   f7252 QGuiApplicationPrivate::createPlatformIntegration
+0xffff00eaeb4b65c2 (/usr/lib/libQt5Gui.so.5.7.0)
                   e901f QPlatformIntegrationFactory::create
+0xffff00eaeb4b60ef (/usr/lib/libQt5Gui.so.5.7.0)
                  2719c2 QFactoryLoader::instance+0xffff00eaec264112 (/usr/
lib/libQt5Core.so.5.7.0)
                  27c6a5 [unknown] (/usr/lib/libQt5Core.so.5.7.0)
                  28321e [unknown] (/usr/lib/libQt5Core.so.5.7.0)
                     f82 dlopen+0xffff00eaf0ab6032 (/usr/lib/libdl-2.24.so)
                    1521 [unknown] (/usr/lib/libdl-2.24.so)
                    f3a4 _dl_catch_error+0xffff00eae958c074 (/usr/lib/
ld-2.24.so)
                     ee9 [unknown] (/usr/lib/libdl-2.24.so)
                   132d9 _dl_open+0xffff00eae958c0c9 (/usr/lib/ld-2.24.so)
                    f3a4 _dl_catch_error+0xffff00eae958c074 (/usr/lib/
ld-2.24.so)
                   1385d dl_open_worker+0xffff00eae958c11d (/usr/lib/
ld-2.24.so)
                    d005 _dl_map_object_deps+0xffff00eae958c275 (/usr/lib/
ld-2.24.so)
                    f3a4 _dl_catch_error+0xffff00eae958c074 (/usr/lib/
ld-2.24.so)
                    cd80 openaux+0xffff00eae958c030 (/usr/lib/ld-2.24.so)
                    83fd _dl_map_object+0xffff00eae958c08d (/usr/lib/
ld-2.24.so)
                   105d4 _dl_name_match_p+0xffff00eae958c044 (/usr/lib/
ld-2.24.so)
                   1964c strcmp+0xffff00eae958c00c (/usr/lib/ld-2.24.so)

This breaks consumers of the `perf script` output who want to feed the IP 
address into addr2line, most notably stackcollapse-perf.

Namhyung, how do you propose to fix this issue, while keeping `-g address` 
function in reports?

Also, while at it, I'd really like to see a way to output the srcline 
information in backtraces output by `perf script`, such that the expensive 
addr2line invocation by stackcollapse-perf becomes obsolete. Any suggestion on 
how to do that? I think it will mean refactoring `perf script` to become aware 
of a `--call-graph` option, similar to `perf report`. Additionally, the data 
must then be published to the python/perl bindings...

Thanks
-- 
Milian Wolff | milian.wolff@kdab.com | Software Engineer
KDAB (Deutschland) GmbH&Co KG, a KDAB Group company
Tel: +49-30-521325470
KDAB - The Qt Experts

[-- Attachment #2: smime.p7s --]
[-- Type: application/pkcs7-signature, Size: 5903 bytes --]

             reply	other threads:[~2016-08-30 15:42 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-08-30 15:42 Milian Wolff [this message]
2016-08-30 22:20 ` regression: perf script IP address format Milian Wolff

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=3089144.akJYgxmlqy@milian-kdab2 \
    --to=milian.wolff@kdab.com \
    --cc=acme@kernel.org \
    --cc=brendan.d.gregg@gmail.com \
    --cc=linux-perf-users@vger.kernel.org \
    --cc=namhyung@kernel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).