Re: [RFC PATCH 0/2] Perf support to SDT markers

From: Namhyung Kim
Date: Wed Sep 04 2013 - 02:49:33 EST


On Tue, 03 Sep 2013 18:53:17 +0530, Hemant wrote:
> On 09/03/2013 02:47 PM, Masami Hiramatsu wrote:
>> (2013/09/03 17:25), Ingo Molnar wrote:
>>> * Hemant Kumar Shaw <hkshaw@xxxxxxxxxxxxxxxxxx> wrote:
>>>
>>>> This series adds support to perf to list and probe into the SDT markers.
>>>> The first patch implements listing of all the SDT markers present in
>>>> the ELFs (executables or libraries). The SDT markers are present in the
>>>> .note.stapsdt section of the elf. That section can be traversed to list
>>>> all the markers. Recognition of markers follows the SystemTap approach.
>>>>
>>>> The second patch will allow perf to probe into these markers. This is
>>>> done by writing the marker name and its offset into the
>>>> uprobe_events file in the tracing directory.
>>>> Then, perf tools can be used to analyze perf.data file.
>>> Please provide a better high level description that explains the history
>>> and scope of SDT markers, how SDT markers get into binaries, how they can
>>> be used for probing, a real-life usage example that shows something
>>> interesting not possible via other ways, etc.
>> Indeed, and also I'd like to know what versions of SDT this support,
>> and where we can see the technical document of that. As far as I know,
>> the previous(?) SDT implementation also involves ugly semaphores.
>> Have that already gone?

It seems it's not. I see the SDT v3 document still mentions semaphores.


> This link shows an example of marker probing with Systemtap:
> https://sourceware.org/systemtap/wiki/AddingUserSpaceProbingToApps

I think the link below would be more helpful for us :)

http://sourceware.org/systemtap/wiki/UserSpaceProbeImplementation

Thanks,
Namhyung

>
> - Markers in binaries :
> These SDT markers are present in the ELF in the section named
> ".note.stapsdt".
> Here, the name of the marker, its provider, type, location, base
> address, semaphore address, arguments are present.
> We can retrieve these values using the members name_off and desc_off in
> Nhdr structure. If these are not enabled, they are present in the ELF
> as nop.
--
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/