This is the mail archive of the
systemtap@sourceware.org
mailing list for the systemtap project.
Re: [PATCH v4 2/3] Support for perf to probe into SDT markers:
- From: Pekka Enberg <penberg at iki dot fi>
- To: Srikar Dronamraju <srikar at linux dot vnet dot ibm dot com>
- Cc: Masami Hiramatsu <masami dot hiramatsu dot pt at hitachi dot com>, Hemant Kumar <hkshaw at linux dot vnet dot ibm dot com>, LKML <linux-kernel at vger dot kernel dot org>, Peter Zijlstra <peterz at infradead dot org>, Oleg Nesterov <oleg at redhat dot com>, hegdevasant at linux dot vnet dot ibm dot com, Ingo Molnar <mingo at redhat dot com>, anton at redhat dot com, systemtap at sourceware dot org, Namhyung Kim <namhyung at kernel dot org>, aravinda at linux dot vnet dot ibm dot com
- Date: Mon, 28 Oct 2013 19:48:22 +0200
- Subject: Re: [PATCH v4 2/3] Support for perf to probe into SDT markers:
- Authentication-results: sourceware.org; auth=none
- References: <20131023044511 dot 1886 dot 82571 dot stgit at hemant-fedora> <20131023050502 dot 1886 dot 15779 dot stgit at hemant-fedora> <CAOJsxLFKm3TxeTmGjbpr1r4sZ8fHcM481-5BM_Cq0J8hhtvBqQ at mail dot gmail dot com> <526E4940 dot 8000608 at hitachi dot com> <526E5BA5 dot 7050103 at iki dot fi> <20131028141152 dot GA1040 at linux dot vnet dot ibm dot com> <526E72EC dot 9060400 at iki dot fi> <20131028173152 dot GB1040 at linux dot vnet dot ibm dot com>
On 10/28/13 7:31 PM, Srikar Dronamraju wrote:
But what if a system has both 32 bit libc and 64 bit libc?
Wont we could end up with 2 libc:setjmp?
Should we give some more intelligence into perf to choose the 64 bit
libc over 32 bit one?
You can just trace both of them by default, no?
There has to be a one to one association with the event name and its
mapping. Every event name will finally map to a unique inode and an
offset.
One option would be for perf to look at these markers and have a
different event name for similar markers in different executables.
I think we are talking past each other here.
Yes, I understand that you need an fully qualified name
for a SDT marker but there's absolutely no reason to force
feed that to the user of 'perf trace'.
For the 32-bit and 64-bit libc case, why cannot 'perf list'
by default print out something like:
$ perf list
libc:setjmp [SDT marker group]
and provide a '--fully-qualified' command line option that:
$ perf list --fully-qualified
libc:setjmp => libc32:setjmp, libc64:setjmp [SDT marker group]
libc32:setjmp => libc:setjmp@/lib/libc.so.6 [SDT marker]
libc64:setjmp => libc:setjmp@/lib64/libc.so.6 [SDT marker]
and then teach 'perf trace' to deal with SDT marker groups
where you trace two events, not one?
And again, there's no reason to treat system libraries like
libc the same way as some random binary in $HOME. You
can use the fully qualified name in 'perf list' for things
that are not in /lib or some perf-specific whitelist.
Pekka