Re: [PATCH v7 11/18] perf tools: add mem access sampling core support

From: Stephane Eranian
Date: Thu Mar 28 2013 - 10:24:36 EST


Arnaldo,

On Wed, Mar 27, 2013 at 5:56 PM, Arnaldo Carvalho de Melo
<acme@xxxxxxxxxx> wrote:
> Em Wed, Mar 27, 2013 at 03:48:15PM +0100, Stephane Eranian escreveu:
>> On Wed, Mar 27, 2013 at 3:34 PM, Jiri Olsa <jolsa@xxxxxxxxxx> wrote:
>> > On Wed, Mar 27, 2013 at 03:20:14PM +0100, Peter Zijlstra wrote:
>> > > On Wed, 2013-03-27 at 15:14 +0100, Jiri Olsa wrote:
>> > > > we have correct cpumode for sample->ip, but I think it's the
>> > > > PEBS->dla (sample->addr) where we need to guess.. right?
>
>> > > kernel mode very much fakes the cpumode/segment stuff for PEBS. PEBS
>> > > assumes you're running in a linear/flat mode.
>
>> > say we hit the sample when kernel accesses the user data, we will endup
>> > with IP in kernel space and DATA ptr in user space.. in theory ;-)
>
>> Yes, this is possible. So I think we could probably leaverage ip__resolve_ams()
>> and pass the extra parameter for MAP_VARIABLE vs. MAP_FUNCTION.
>
> BTW, I fixed up the patches (kernel and user parts) and have them in
> perf/mem at:
>
> git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux
>
> Hope to push it to Ingo today/tomorrow, after some more testing, thanks
> Jiri for reviewing it.
>
> Stephane, if you could give it a try again to see that the fixups I did
> (documented in the commit logs, just before my Signed-off-by) are ok,
> that would be good.
>
I tried on a few examples on both NHM (only loads, no TLB) and SNB
and got the right answers for my tests, including data symbol resolution.

What we discussed with Jiri yesterday can be added later on.

Thanks for the integration work. Looks good to me.

> - Arnaldo
>
>>
>> >
>> > and that would need the cpumode guessing for DATA ptr, because
>> > cpumode value is deduced from cs register
>> >
>> > jirka
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/