linux-perf-users.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Milian Wolff <milian.wolff@kdab.com>
To: Andi Kleen <andi@firstfloor.org>
Cc: 5A@linux.intel.com, linux-perf-users@vger.kernel.org
Subject: Re: LBR unwinding for user defined dynamic trace point
Date: Thu, 07 Apr 2016 17:05:07 +0200	[thread overview]
Message-ID: <2173915.EElRzu5JW2@milian-kdab2> (raw)
In-Reply-To: <20150916185614.GF1747@two.firstfloor.org>

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

On Wednesday, September 16, 2015 8:56:14 PM CEST Andi Kleen wrote:
> On Wed, Sep 16, 2015 at 11:55:22AM +0200, Milian Wolff wrote:
> > On Tuesday, September 15, 2015 7:02:37 AM CEST Andi Kleen wrote:
> > > Milian Wolff <milian.wolff@kdab.com> writes:
> > > > When I do the same with the Dwarf unwinder, it works just fine. Using
> > > > the
> > > > LBR unwinder with a performance counter like instructions also works
> > > > fine. Does anyone know what the issue is here?
> > > 
> > > LBR is only supported for PMU sampling at this point.
> > 
> > OK, thanks. Can you give me some more information on why that is? Is it
> > fundamentally not possible, or simply not yet implemented?
> 
> For LBR callgraph it could be implemented. For some other LBR usages
> there would be limitations, as there is no LBR freezing for software
> trace points.

Hey Andi,

I read your articles on LBR on LWN, thanks a lot for that! I want to revive 
this older thread though:

Could you tell me what would be required to get LBR callgraphs supported for 
trace points? I noticed that it also does not work with static tracepoints or 
software events:

~~~~~~~~~~~~~~~~~~~~~~~
$ perf record -e faults --call-graph lbr ls
Error:
The sys_perf_event_open() syscall returned with 95 (Operation not supported) 
for event (faults).
/bin/dmesg may provide additional information.
No CONFIG_PERF_EVENTS=y kernel support configured?

$ perf record -e raw_syscalls:sys_enter --call-graph lbr ls
Error:
The sys_perf_event_open() syscall returned with 95 (Operation not supported) 
for event (raw_syscalls:sys_enter).
/bin/dmesg may provide additional information.
No CONFIG_PERF_EVENTS=y kernel support configured?
~~~~~~~~~~~~~~~~~~~~~~~

It does work fine for hardware events though:

~~~~~~~~~~~~~~~~~~~~~~~
$ perf record -e cache-misses --call-graph lbr ls
WARNING: No sample_id_all support, falling back to unordered processing
...
[ perf record: Woken up 1 times to write data ]
[ perf record: Captured and wrote 0.017 MB perf.data (6 samples) ]
~~~~~~~~~~~~~~~~~~~~~~~

Due to the reasons and advantages you point out in your article for LBR 
callgraphs, I'd love to see it supported for the above use-cases as well, if 
possible. If you can guide me, and it does not require me to patch the kernel 
itself, then I'm also willing to come up with a patch for perf.

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-04-07 15:05 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-09-15 13:12 LBR unwinding for user defined dynamic trace point Milian Wolff
2015-09-15 14:02 ` Andi Kleen
2015-09-16  9:55   ` Milian Wolff
2015-09-16 18:56     ` Andi Kleen
2016-04-07 15:05       ` Milian Wolff [this message]
2016-04-07 15:55         ` Andi Kleen

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=2173915.EElRzu5JW2@milian-kdab2 \
    --to=milian.wolff@kdab.com \
    --cc=5A@linux.intel.com \
    --cc=andi@firstfloor.org \
    --cc=linux-perf-users@vger.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).