RE: [tip:tracing/core] x86, bts: reenable ptrace branch tracesupport

From: Metzger, Markus T
Date: Wed Jun 10 2009 - 09:24:04 EST


>-----Original Message-----
>From: Ingo Molnar [mailto:mingo@xxxxxxx]
>Sent: Wednesday, June 10, 2009 2:51 PM
>To: Peter Zijlstra
>Cc: mingo@xxxxxxxxxx; hpa@xxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; Metzger, Markus T;
>tglx@xxxxxxxxxxxxx; oleg@xxxxxxxxxx; linux-tip-commits@xxxxxxxxxxxxxxx
>Subject: Re: [tip:tracing/core] x86, bts: reenable ptrace branch trace support
>
>
>* Peter Zijlstra <peterz@xxxxxxxxxxxxx> wrote:
>
>> On Thu, 2009-05-07 at 09:25 +0000, tip-bot for Markus Metzger wrote:
>> > Commit-ID: 7e0bfad24d85de7cf2202a7b0ce51de11a077b21
>> > Gitweb: http://git.kernel.org/tip/7e0bfad24d85de7cf2202a7b0ce51de11a077b21
>> > Author: Markus Metzger <markus.t.metzger@xxxxxxxxx>
>> > AuthorDate: Fri, 24 Apr 2009 09:44:48 +0200
>> > Committer: Ingo Molnar <mingo@xxxxxxx>
>> > CommitDate: Fri, 24 Apr 2009 10:18:51 +0200
>> >
>> > x86, bts: reenable ptrace branch trace support
>> >
>> > The races found by Oleg Nesterov have been fixed.
>> >
>> > Reenable branch trace support.
>> >
>> > Signed-off-by: Markus Metzger <markus.t.metzger@xxxxxxxxx>
>> > Acked-by: Oleg Nesterov <oleg@xxxxxxxxxx>
>> > LKML-Reference: <20090424094448.A30216@xxxxxxxxxxxxxxxxxxx>
>> > Signed-off-by: Ingo Molnar <mingo@xxxxxxx>
>>
>> OK, this whole BTS thing worries me because it seems to expose too
>> much of the Intel Debug Store thingy to the outside world.
>>
>> The thing is, once we do PEBS from inside the kernel, we'll have
>> to share the debug store, and the way this thing sets it up isn't
>> really going to work.
>>
>> So what I'd like to see is having this debug store removed from
>> the interface and abstracted away as cpu resource -- a single page
>> when in use should suffice I think.
>>
>> If you want to expose a buffer to userspace, use the regular
>> mmap() interface and fill those pages from the DS interrupt
>> handler.
>
>hm, that makes sense indeed. We are in the merge window now -
>Markus, what's your suggestion?

The Debug Store interface is completely in-kernel. It does not expose
anything to the outside world.

What we expose is a ptrace interface for branch tracing.
That this is built on top of Debug Store is completely hidden.
The Debug Store interface may be changed without impacting the
user-visible part at any time.

I do think that a ptrace interface makes sense since debuggers are the
targeted users for branch tracing.

I don't see why we should not merge the fixes now and then rework the
in-kernel parts as needed for supporting PEBS.


regards,
markus.

---------------------------------------------------------------------
Intel GmbH
Dornacher Strasse 1
85622 Feldkirchen/Muenchen Germany
Sitz der Gesellschaft: Feldkirchen bei Muenchen
Geschaeftsfuehrer: Douglas Lusk, Peter Gleissner, Hannes Schwaderer
Registergericht: Muenchen HRB 47456 Ust.-IdNr.
VAT Registration No.: DE129385895
Citibank Frankfurt (BLZ 502 109 00) 600119052

This e-mail and any attachments may contain confidential material for
the sole use of the intended recipient(s). Any review or distribution
by others is strictly prohibited. If you are not the intended
recipient, please contact the sender and delete all copies.

--
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/